DragonFly BSDレスキューその1

VirtualBoxでは「仮想アプライアンスのエクスポート」を使用すると、 VMを別の環境へもって行くことができます。

ホストマシンをRAID化するにあたり、いくつかのVMをエクスポートして退避しておいたのですが、それをインポートしたらDragonFlyが起動しなくなってしまいました。

途中までブートするのですが、以下のメッセージが表示されて中断してしまいます。

Mouting root from hammer:serno/VBd6ba413a-6cd38687.s1d
no disk named 'serno/VBd6ba413a-6cd38687.s1d'
hammer_mountroot: can't find devvp
Root mount failed: 6

Manual root filesystem specification:
 <fstype>:<device> Specify root (e.g. ufs:da0s1a)
 ? List valid disk root devices
 panic Just panic
 abort Abort manual input

mountroot>

どうやら"/"にマウントすべきディスクが見つからないようです。 メッセージを見て気づいたのですが、DragonFlyはシリアルナンバーでディスクを管理する作法のようですね。

とりあえず?を入力してみます。

mountroot> ?
Possibly valid devices for root FS:
 "md0" "md0s0" "ad0" "ad0s1" "ad0s1a" "ad0s1b" "ad0s1d" "ad1" "ad1s0" "ad1s1" "acd0" "sg0" "cd0"
mountroot>

ディスク自体(ad0*)は認識されているようです。 それらしいのをいくつか試してみます。

mountroot> hammer:ad0s1a
Mounting root from hammer:ad0s1a
hammer_mount: volume /dev/ad0s1a has as invalid header
Root mount failed: 79

mountroot> hammer:ad0s1b
Mounting root from hammer:ad0s1b
hammer_mount: volume /dev/ad0s1b has as invalid header
Root mount failed: 79

mountroot> hammer:ad0s1d
Mounting root from hammer:ad0s1d
HAMMER(ROOT) recovery check seqno=0030227d
HAMMER(ROOT) recovery range 3000000019a15a90-3000000019a15a90
HAMMER(ROOT) recovery nexto 3000000019a15a90 endseqno=0030227e
HAMMER(ROOT) mounted clean, no recovery needed
DMA space used: 144k, remaining available: 16384k
Mounting devfs
Loading configuration files.
Loading devfs rules: /etc/defaults/devfs.conf.
dumpon: /dev/serno/VBd6ba413a-6cd38687.s1b: No such file or directory
Starting file system checks:
Can't stat /dev/serno/VBd6ba413a-6cd38687.s1a: No such file or directory
Can't stat /dev/serno/VBd6ba413a-6cd38687.s1a: No such file or directory
/dev/serno/VBd6ba413a-6cd38687.s1a: CAN'T CHECK FILE SYSTEM.
/dev/serno/VBd6ba413a-6cd38687.s1a: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
Automatic file system check failed; help!
May 22 06:05:19 init: /bin/sh on /etc/rc terminated abnormally, going to single user mode
Enter full pathname of shell or RETURN for /bin/sh:

hammer:ad0s1dをルートにマウントさせることができました。 上のほうで挙げたログにno disk named 'serno/VBd6ba413a-6cd38687.s1d'とあるので、最初からad0s1dを試せばよかったですね。

ここまではいいのですが、他のファイルシステムが見つからないのでシングルユーザモードへ落とされてしまいました。

次回、修復を試みます。

修復編へつづく。