Maxtor ROMULUS発見(´ー`) つまり復旧不能なクラッシュ…
It is broken if Maxtor ROMULUS harddisk is at hand. You should give it up. :-(
ということで、SoftRAIDの片肺だけで運用して安心してたら、両方HDDクラッシュ(´ー`)
関係者の皆様にはご迷惑かけました。たまたま 早朝にBKUPとってたから幸いしたけど。
/dev/ad0s1a on /: Specified device does not match mounted device.
rsyncで取ってたんで、適当にパーティション切って上書き…しかし上記のようなメッセージで
起動できなくなっちまいました・・・ハテ?(´ー`)?
結構話として上がってる内容では「パーテイションの余地がどうのこうの」なんですが、今回は違ってて /dev/ad0s1a の major/minor番号が kernel中の値と違う… だったんですね。rsyncで上書きされてしまってました。kernelは差し換えてないので食い違いが…ということです。
何故か rsync先(Linux)では以下のようになってましたが、
crw-r----- 1 root tty 116, 2 Mar 4 2003 dev/ad0
crw-r----- 1 root tty 116, 0 Mar 4 2003 dev/ad0a
crw-r----- 1 root tty 116, 1 Mar 4 2003 dev/ad0b
crw-r----- 1 root tty 116, 2 Mar 4 2003 dev/ad0c
crw-r----- 1 root tty 116, 3 Mar 4 2003 dev/ad0d
crw-r----- 1 root tty 116, 4 Mar 4 2003 dev/ad0e
crw-r----- 1 root tty 116, 5 Mar 4 2003 dev/ad0f
crw-r----- 1 root tty 116, 6 Mar 4 2003 dev/ad0g
crw-r----- 1 root tty 116, 7 Mar 4 2003 dev/ad0h
crw-r----- 1 root tty 116, 2 Mar 4 2003 dev/ad0s1
crw-r----- 1 root tty 116, 0 Mar 4 2003 dev/ad0s1a
crw-r----- 1 root tty 116, 1 Mar 4 2003 dev/ad0s1b
crw-r----- 1 root tty 116, 2 Mar 4 2003 dev/ad0s1c
crw-r----- 1 root tty 116, 3 Mar 4 2003 dev/ad0s1d
crw-r----- 1 root tty 116, 4 Mar 4 2003 dev/ad0s1e
crw-r----- 1 root tty 116, 5 Mar 4 2003 dev/ad0s1f
crw-r----- 1 root tty 116, 6 Mar 4 2003 dev/ad0s1g
crw-r----- 1 root tty 116, 7 Mar 4 2003 dev/ad0s1h
crw-r----- 1 root tty 116, 2 Mar 4 2003 dev/ad0s2
crw-r----- 1 root tty 116, 2 Mar 4 2003 dev/ad0s3
crw-r----- 1 root tty 116, 2 Mar 4 2003 dev/ad0s4
本来は下のようになってないといかんわけです(´ー`)
# ls -l /dev/ad0*
crw-r----- 2 root operator 116, 0x00010002 Jun 17 05:52 /dev/ad0
crw-r----- 2 root operator 116, 0 Jun 17 05:52 /dev/ad0a
crw-r----- 2 root operator 116, 1 Jun 17 05:52 /dev/ad0b
crw-r----- 2 root operator 116, 2 Jun 17 05:52 /dev/ad0c
crw-r----- 2 root operator 116, 3 Jun 17 05:52 /dev/ad0d
crw-r----- 2 root operator 116, 4 Jun 17 05:52 /dev/ad0e
crw-r----- 2 root operator 116, 5 Jun 17 05:52 /dev/ad0f
crw-r----- 2 root operator 116, 6 Jun 17 05:52 /dev/ad0g
crw-r----- 2 root operator 116, 7 Jun 17 05:52 /dev/ad0h
crw-r----- 2 root operator 116, 0x00020002 Jun 17 05:53 /dev/ad0s1
crw-r----- 2 root operator 116, 0x00020000 Jun 17 05:53 /dev/ad0s1a
crw-r----- 2 root operator 116, 0x00020001 Jun 17 05:53 /dev/ad0s1b
crw-r----- 2 root operator 116, 0x00020002 Jun 17 05:53 /dev/ad0s1c
crw-r----- 2 root operator 116, 0x00020003 Jun 17 05:53 /dev/ad0s1d
crw-r----- 2 root operator 116, 0x00020004 Jun 17 05:53 /dev/ad0s1e
crw-r----- 2 root operator 116, 0x00020005 Jun 17 05:53 /dev/ad0s1f
crw-r----- 2 root operator 116, 0x00020006 Jun 17 05:53 /dev/ad0s1g
crw-r----- 2 root operator 116, 0x00020007 Jun 17 05:53 /dev/ad0s1h
crw-r----- 2 root operator 116, 0x00030002 Jun 17 05:53 /dev/ad0s2
crw-r----- 2 root operator 116, 0x00040002 Jun 17 05:53 /dev/ad0s3
crw-r----- 2 root operator 116, 0x00050002 Jun 17 05:53 /dev/ad0s4
このままだと rootのマウントも出来ませんから
mount /dev/ad0s1a /mnt
chroot /mnt
cd /dev
してから、 ./MAKEDEV ad0 で ~ ad0s1h ~ ad3 位まで再作成。
kernelは デバイス名じゃなくて major/minor番号は知ってるでしょうから、/etc/rc 読む前の / までは見えるんでしょうけど、 / をマウントしたあとの /devを頼りに major/minor 拾ってるやつは 全滅しちゃうわけです。(コレで復旧が3時間ほど遅れました…)
何はともあれ復旧(´ー`)
Posted by minemaz at 2006年06月16日 22:28