« 2009年5月 | トップページ | 2009年10月 »

2009年8月の1件の記事

2009-08-19

grubブートフロッピーからの起動と復旧

なんでしょうか、先日Linuxをいじっていたら変なメッセージが . . . 。
で、この機械自体が物凄く古くて、始めは富士通のFMV DESKPOWER SII165でした。
CD-ROMとかCPUとか色々な物を色々な壊れたコンピュータから外して使っているうちに、自分でも構成すら判らなくなってしまっていました。
ただ、今回はHDDがリズミカルに、「カッチャンカッチャン」とHDDの音としては初めて聞く音を出していたので、明らかに壊れたと判りました。

で、Knoppixで起動してHDDを調べてみると、どうやら壊れたドライブでは、対したことをしていなかったようです。 プライマリマスターが壊れたのですが、随分前にWindowsをいれていたドライブらしいです。
その後、FAT32のままマウントして特に用途もなく使っていたようです。
という訳で、/(ルート)がプライマリのスレーブにありました。

復旧の構想としては、スレーブをマスターに付け換えて、mbrにブートローダーをインストールする。

まずは、grubブートフロッピーを作成します。
ftp://alpha.gnu.org/gnu/grub/ここで、grub-0.97-i386-pc.ext2fsをダウンロードして

dd if=grub-0.97-i386-pc.ext2fs of=/dev/fd0

でFDに書き込んだと思います。
このフロッピーから起動します。
このコンピュータのディストリビューションはVine4.2です。
vmlinuzという最新カーネルへのシンボリックリンクが作られています。

grub> kernel (hd0,0)/vlinuz ro root=/dev/hda2 [Enter]
grub> boot [Enter]

これで起動はできました。
実際にはLBAが効いていないためだと思いますが、8Gの壁でパーティションに問題が発生したので、スワップ領域を削除しておきました。

この状態で、/etc/lilo.confを編集します。
このコンピュータはずっと使っているので、liloのままでした。
面倒なのでこのままliloを使います。
今までroot=/dev/hdb2などとなっていた、変更部分を適宜環境に併せて編集しました。また、サスペンド用のデータ保存領域にスワップ領域が指定されているので、コメントアウトしました。
で、インストールします。

# lilo

エラーがでなくなればとりあえず大丈夫だと。

# reboot

ちゃんと起動しました。
LBAも効いているので、この状態であればfdiskで再度スワップ領域を作成できました。
なので、/etc/fstabや/etc/mtabなども編集しなおして、スワップ領域を使えるように変更。
やっと動くようになりました。

支離滅裂な文章なので、後日まとめ直します。

| | コメント (0) | トラックバック (0)

« 2009年5月 | トップページ | 2009年10月 »