2016-10-11

NetBSD/i386をインストールしようとしたらnewfsに失敗した

dynabook SS SX/15AにNetBSD/i386 7.0.1をインストールしてみます。NetBSD/i386ならUSBメモリから起動できることが確認できているので、NetBSD-7.0.1-i386-install.img.gzの圧縮を解いてddでUSBメモリに書き込みます。
# gzip -d NetBSD-7.0.1-i386-install.img.gz
# dd if=NetBSD-7.0.1-i386-install.img of=/dev/da1 bs=1M conv=sync
このUSBメモリでインストーラを起動します。今度はUSB-HDDをMBRで構成してあるのでNetBSD用のパーティションとして60Gを確保しました。その中はdisklabelで伝統的なパーティションを切りました。

さて、いよいよインストールが始まります。
OK, we are now ready to install NetBSD on your hard disk (sd0). Nothing has been written yes. This is your last change to quit this process before anything gets changed.  Shall we continue?
もう後戻りはできないぞという最終確認メッセージが現れ、いよいよインストールがおこなわれるかと思いきや、またしてもエラーになりました。disklabelで切ったパーティションをnewfsしようとしてしっぱいしたようです。
 Status: Command failed
Command: /sbin/newfs -V2 -O 2 -b 16384 -f 2048 /dev/rsd0a
 Hit enter to continue
-----------------------------------------
newfs: /dev/rsd0a: open for read: Device busy
今度こそうまくいくかと思ったのにガッカリしました。気を取り直してWebを検索してみると「install fails at newfs」という情報が見つかりました。これを参考に「sysctl hw.disknames」を確認すると「hw.disknames = wd0 sd0 sd1 dk0」になっていました。さらにdmesgには次のようなメッセージも出力されていました。
sd1 at scsibus1 target 0 lun 0: <BUFFALO, External HDD, 0000> disk fixed
sd1: 931 GB, 6383 cyl, 16 head, 63 sec, 512 bytes/sect x 1953525160 sectors
dk0 at sd1: Microsoft reserved partition
dk0: 262144 blocks at 34, type:
ここに出てくる「Microsoft reserved partition」というのは、GPT構成にしているときに出来るもののはずです。このUSB-HDDは、GPTにしたり、MBRに戻したりしているので、この領域が出来ても不思議はないのですが、少なくとも今はMBRにしているはずです。GPTではないのに、この領域が見えているのは変だと思います。

HxDでUSB-HDDを覗くと、セクタ1には「第一GPTヘッダ」が残っており、セクタ2には「Mircosoft reserved partition」という文字列も見えています。もしかするとこれらのゴミが悪さをしているのかもしれません。第一GPTヘッダを潰せば良いと思うので、HxDで強制的にゼロクリアしてみました。

この結果、dk0が現れなくなり、試しにnewfsしてみたところ無事に処理できました。今度こそインストールに成功しそうです。

0 件のコメント:

コメントを投稿