2022-05-28 22:42 — asano
カテゴリー:
とあるパーティションが手狭になってきたので6TB HDDを追加しました。
これは元々容量に余裕のあったNASに置いていたのですが、小さなファイルが大量にあるという条件のためかNASのパフォーマンスがあまり出ていませんでした。そこで余っていた(NASトラブルでTS-410から外した)2TBのHDDに移していたのですが、遂に使用率が容量の80%・i-nodeの95%に達してしまい増設することにしました。
2TB→6TBと容量は3倍ですが、容量当たりのi-nodeを倍にする予定なので実質4倍近くになります。
ということでNASでも実績のあるWD Red PlusシリーズのWD60EFZXを調達しました。
これまでローカルに2TBを超えるHDDを接続したことはありませんのでずっとdisklabelを使っていた(しかもfdiskパーティション無し・PC入替(その2)参照)のですが、NetBSDの昔ながらのdisklabelでは2TBまでのドライブしか対応していません。調べると全体を1 disklabelパーティションにする(/dev/wd?dを使う)なら出来ないことは無いらしいのですが、後々面倒みたいなので今回は諦めてwedgeを使うことにします。
まずはGPTパーティションを作成します。
mercury [7] # gpt create wd2
続いてNetBSDの領域を確保します。
mercury [17] # gpt add -b 128 wd2
/dev/rwd2: Partition 1 added: 49f48d5a-b10e-11dc-b99b-0019d1879648 128 11721045007
128セクタのオフセットを付けているのはこのドライブが4kセクタなので8の倍数にするため、少し余裕を見て128にしましたが34以上なら良いので40とかでもOKなはずです。
さらにこの領域をNetBSDから使えるようにします。
mercury [32] # dkctl wd2 addwedge maps 128 11721045007 ffs
dk0 created successfully.
これで/dev/dk0
でアクセスできるようになりました。
ここまで作成したパーティション・wedgeを表示して確認しておきます。
mercury [33] # gpt show wd2
start size index contents
0 1 PMBR
1 1 Pri GPT header
2 32 Pri GPT table
34 94 Unused
128 11721045007 1 GPT part - NetBSD FFSv1/FFSv2
11721045135 32 Sec GPT table
11721045167 1 Sec GPT header
mercury [34] # dkctl wd2 listwedges
/dev/rwd2: 1 wedge:
dk0: maps, 11721045007 blocks at 128, type: ffs
思ったより簡単でしたが、個人的にはdisklabelに愛着があります。以前 8パーティションから16パーティションに拡張したように64bit対応できなかったのかなぁ。
ここから先はdisklabelの場合と大差ありません。
mercury [40] # newfs -O2 -b16k /dev/dk0
/dev/rdk0: 5723166.5MB (11721045004 sectors) block size 16384, fragment size 2048
using 30947 cylinder groups of 184.94MB, 11836 blks, 22976 inodes.
super-block backups (for fsck_ffs -b #) at:
160, 378912, 757664, 1136416, 1515168, 1893920, 2272672, 2651424, 3030176,
...............................................................................
この容量だとブロックサイズは標準で32kB(もっと大きくすることも)ですが、小さなファイルばかりという事情からあえて16kBに変更しています。これと連動してi-nodeも倍になるので-i
オプションは特に指定していません。
あとは/mnt
にでもマウントし、問題なければ/etc/fstab
を変更します。
ここで既存の2TB HDDからコピーを始めたのですが、しばらくして止まってしまいました。
コンソールのログを確認すると「soft error (corrected)」のようなエラー(すみませんログ保存し忘れました)とリトライを繰り返しています。
不良品を引き当ててしまったのか...
でも交換してもらうにはNetBSDでの話では通らないでしょう。
ちょうどRAID 6で動いているNASのHDDが1台警告を出しているのでそれと交換してみることにしました。(1台外してもまだ冗長性は残るので...)
ところがSMARTのテストも通ってしまい、リビルドも問題なく進んでいきます。
HDDに問題が無いとすると何でしょう?
- 電源容量
- SATAケーブル
- 放熱
電源は余裕のあるものを積んでいますし、他のHDDには問題は発生していません。放熱の問題にしても他のHDDと比較して特に条件が悪いようには思えません。
というわけでSATAケーブルを追加で調達しました。
一度NASに接続してパーティション等壊れているので、上記の手順をやり直して再度コピーしているところです。今のところ問題はありませんが、もう少し様子見ですね。
コメントを追加