MBR(Master Boot Record)がおかしくなった時の対処方法
ブートローダにgrubを使っている時の場合はgrub起動ディスクが必要。
あらかじめ作っておく必要があるのだがない場合は
他のLinux環境で作るなどの作業が必要。
CentOS4の場合フロッピードライブにフロッピーディスクを入れて以下のコマンドを入力。
# dd if=/usr/share/grub/i386-redhat/stage1 of=/dev/fd0 count=1
---
読み込んだブロック数は 1+0
書き込んだブロック数は 1+0
---
# dd if=/usr/share/grub/i386-redhat/stage2 of=/dev/fd0 seek=1
---
読み込んだブロック数は 202+1
書き込んだブロック数は 202+1
---
これで完成。
実際の使い方は、ちょっとめんどくさいが、/boot/grub/grub.confにかかれている内容そのまま。
だからCDブートLinuxなどで起動してCentOS4のパーティションをマウントしてgrub.confをみてみよう。
出来たフロッピーでMBRを新たに書き換える場合はフロッピーからブートしてプロンプトが出たところで次のコマンドを順に打つ。
適宜環境にあわせて値を変更してください。
grub> root (hd0,1) <--- ハードディスク1番目の2つ目のパーティションの場合
grub> kernel /boot/vmlinuz-2.6.9-42.0.3.EL ro root=/dev/hda2 rhgb quiet
grub> initrd /boot/initrd-2.6.9-42.0.3.EL.img
grub> boot
これで起動する。
起動したら/boot/grub/grub.confを確認した後MBRを書き換えましょう。
# grub-install /dev/hda <--- ハードディスクの先頭領域にMBRを書き込み