買って繋いで適当にnewfsして使っていたドライブがいわゆるAFT、 ビッグセクタドライブなのに、導入当時のfdiskのデフォルトの63セクタはじまり で使っていた。しばらく問題なかったが、RAID1を組む相手ドライブを非AFTから AFT に変えて、そっちだけ2048始まりにしたことで遅さが顕著になった。 じゃ、2048セクタ始まりに変えよう。
wd0が今回問題となった WDC WD20EARX-00PASB0 で、wd1 は問題なし。 極端に書くとこんな感じ。
wd0(start=63s) | wd1(start=2048s) | |
---|---|---|
mbr | mbr | |
: | ||
wd0a | ||
wd1a | /dev/raid0 | |
swap | ||
swap | ||
wd0e | ||
wd1e | /dev/raid2 | |
: | ||
: | : |
いったんwd0をRAID1セットから外してfdiskしなおしてまたくっつける。
raidctl -F /dev/wd0a raid0 raidctl -F /dev/wd0e raid2 : mbrをこわす dd if=/dev/zero of=/dev/rwd0d count=64 fdisk -iuBa0 wd0 : startに2048で答えて2048で確保しなおす : disklabelをつくりなおす disklabel -e wd0 : vi上がったら :r! disklabel wd1 | tail[Ret] してwd0の仕分け情報をコピー : 古い値は消す。 : で、いまの / って ffsv1なのかなv2なのかな? dumpfs / | head -2 file system: /dev/rraid0a format FFSv1 : あらーffsv1 だったのかー installboot -v -o timeout=3,speed=115200,console=com0kbd \ /dev/rwd0a /usr/mdec/bootxx_ffsv1 : in-place reconstructする。 raidctl -R /dev/wd0a raid0 raidctl -R /dev/wd0e raid2 : 待つ : 待つ : 待つ : ……翌日、確認後rebootしておしまい raidctl -s raid0 raidctl -s raid2 shutdown -r now
raidframeによるRAID1構成なので、リブート以外に止めることなく完了。 上記の例ではリブート1回だが、 実際にはwd0からの起動とwd1からの起動両方を確認するために数回リブートした。