今回は部屋に転がっていた400GBのSATA HDDにFreeBSD 7.2-RELEASEを入れる事にする。元のシステムを復旧させる方がネタ的には良いんだろうけど、何せシステムが不安定になる心当たりが多すぎる*1ので6.3-STABLEからのアップデートも兼ねて新規インストール。
RAID再構築
今回はシステムはRAIDに含めない事にする。バックアップからのデータのリストアは面倒だが、システム領域ぶっ飛ばしても復旧は簡単だし、家サーバーだから止まっても問題ないしね。…というのは言い訳でもうSATAの空きポートが無い orz
ストレージの構成は以下
ad12 システム、ブートドライブ 非RAID ad13 ad6 データ領域A RAID1 ad14 ad8 データ領域B RAID1 ad15 ad10 データ領域C RAID1
ad13はシステムとATAチャネルが重なっているのでshutdownしないと復旧できないがここは目をつぶる事にする。
システムインストール後にネットワーク等最低限の設定をした後、起動時にgmirrorをロードするように設定
/boot/loader.conf geom_mirror_load="YES"
RAID対象のドライブを1台のみ電源を入れ再起動*2、RAIDドライブを作成する。
・ドライブの接続を確認 # atacontrol list ATA channel 0: ……省略 ATA channel 3: Master: ad6SATA revision 2.x Slave: no device present ……省略 ATA channel 6: Master: ad12 SATA revision 2.x Slave: no device present ……省略 ……gmirror 設定 # gmirror label -v -b round-robin mrr1 /dev/ad6 gmirror: Can't store metadata on /dev/ad6: Operation not permitted. ……失敗、オンラインではプロテクションされてるらしい # sysctl kern.geom.debugflags=16 kern.geom.debugflags: 0 -> 16 # gmirror label -v -b round-robin mrr1 /dev/ad6 Metadata value stored on /dev/ad6. Done. # gmirror status Name Status Components mirror/mrr1 COMPLETE ad6 ……マウントして内容を確認、…最初にやるべきだったな。 # mount -t ufs /dev/mirror/mrr1s1 /mnt
この作業をad8とad10にも行う。そしてgmirror insert でミラードライブを追加するが……
# gmirror status Name Status Components mirror/mrr1 DEGRADED ad6 mirror/mrr2 COMPLETE ad8 ad14 mirror/mrr3 DEGRADED ad10
ad13とad15がダメ、
ATA channel 6: Master: ad12SATA revision 2.x Slave: ad13 SATA revision 2.x ATA channel 7: Master: ad14 SATA revision 2.x Slave: ad15 SATA revision 2.x