- ベストアンサー
NTLDRに上書きされてしまったMBRへのGRUBの再インストール方法
こんにちは 質問させて下さい。 現在わたしのPCでは、VINE4.1とWindowsXPをGRUBでデュアルブートしています。 しかし、windowsの方が調子がおかしかったのでそちらを再インストールし直したところ VINEの方が起動しなくなってしまいました。 (PCの電源を入れると、自動でwindowsが立ち上がるようになってしまいました) その原因はWindowsの再インストール時にNTLDRが もともとGRUBがあったMBRに上書きされてしまったせいだと思い VINEのインストールCDから、GRUBをMBRに書き込む作業 (アップデート→ブートローダーの変更)をしようとしましたが 「カーネルパッケージがインストールされて無いので、ブートローダーの設定は変更できません」 と言われて出来ませんでした。 ※つい昨日までVINEが動いてたので、カーネルが無い訳はないですし VINEを入れた後にカーネルを変えたこともありません。 次にためしに、NTLDRからGRUBの読み出しでもして起動できないかと思い、 まず /boot があるパーティションの先頭にGRUBを入れようとしたのですが、 MBRに入れようとしたときと同様のエラーで出来ませんでした。 自分はLinuxを使い始めたばかりで、 うっかり『/home/自分の使ってるユーザー』のディレクトリに バックアップも取らずに重要なファイルをたくさん置いてしまってたので それらどうにか回収したいのですが、 どうにかVINEを起動させる(GRUBを再インストールさせる)方法はないでしょうか? ※knoppixをCDブートして見たところ、VINEの/home/そのユーザーのディレクトリは、 ロックが掛かっていてアクセスできませんでした
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 MBRをうっかり初期化してしまったときの修復には、Knoppixがとても役に立ちますね。 手順としては、 (1) ハードディスク上の各パーティションを、それと対になる、/mnt/ 配下のディレクトリに デバイスオプション(dev)で、マウントする。 ディレクトリは、Knoppixが自動的に作ってくれているはずです。 (2) mountコマンドで、/mnt/ 配下にファイルシステムのマウントツリーを完成させる。 (3) あとは、ルートパーティションを指定して、grub-install を実行するだけです。 grub-install --root-directory=/mnt/ルートパーティション /dev/hda (3') devfsを使用していない場合は、chrootコマンドでルートパーティションを指定します。 chroot /mnt/ルートパーティション grub-install /dev/hda あなたのLinuxのパーティション情報がさっぱりわかりませんので、正確な 手順は示せませんが、Googleで検索すれば、Knoppixを使ったMBR修復の 解説ページはいくらでも見つかりますので調べてみてください。
その他の回答 (2)
- justraver
- ベストアンサー率30% (62/201)
Windowsのインストーラーは、馬鹿チンですからねぇ。 ドライブ情報やパーティションを自分の使いやすい方法に書き換えられてますよ。 なので、Vineの/bootディレクトリのカーネル情報が間違った形になってます。(たぶん) 自分は、以前 hda にC、Dドライブ、hdb にE、Fドライブとしてパーティションを区切ってましたが、 再インストールした際に hda がC、Eドライブにhdb がD、Fドライブに書き換えられてました。 (Windowsは、基本パーティションを先に割り当てると言うルールを勝手に強制します。そうしなくても使えるのに) ドライブレターは、(CとかDとかいった奴)Windowsが使うものでLinuxには 関係ないはずなのですが同時にパーティションもいじるのか ブートようのディレクトリ、ファイル(initrd等)が見つからないと起動できませんでした。 ノピックスを使ってマウントする時は、プロパティのリードオンリーを解除してからじゃないとロックが掛かった(読み込み専用)状態になります。 また、root でログインされていないので/home配下のユーザーディレクトリに入れないんだと思います。 ヘルプなどを見るとrootで入る為のパスワードが書かれているはず。 それで入ってバックアップとって下さい。 因みにKは発音しないはずなのにクノピックスっとして書籍が出てましたね、あれはどうなんだろう(笑) 書込みができれば、Grubの設定も弄れますし 逆にNTLDRからLinuxを立ち上げる設定にも持って行けますよ。
お礼
>root でログインされていないので/home配下のユーザーディレクトリに入れないんだと思います。 回答ありがとうございます! 教えていただいと通りにrootで入ったら 読み書きとファイルの移行までできるようになりました あとは、Grubを入れなおすだけなのですが >>なので、Vineの/bootディレクトリのカーネル情報が間違った形になってます。(たぶん) >書込みができれば、Grubの設定も弄れますし >逆にNTLDRからLinuxを立ち上げる設定にも持って行けますよ。 現在、Grubはどこにも入っていないので knoppixからGrubを/bootに入れて、NTLDRからそのGrubを読み出す ということでいいのでしょうか?
- Tacosan
- ベストアンサー率23% (3656/15482)
「GRUB がインストールできればよい」ということであれば, Gentoo のインストール CD を使ってできるとは思います (ディレクトリ構成がわかっていれば) が.... 「Linux を使い始めたばかり」の人にこれを出すのはつらいかなぁ.
お礼
ありがとうございます! >Gentoo のインストール CD を使ってできるとは思います (ディレクトリ構成がわかっていれば) が.... 教えてくださった参照リンク先から、今ダウンロードしてます (700Mもあるので、数時間かかってしまいますが) 終わったら、試してみようと思います
お礼
回答ありがとうございます >あなたのLinuxのパーティション情報がさっぱりわかりませんので、 ごめんなさい、うっかり書き忘れてました・・・ >Googleで検索すれば、Knoppixを使ったMBR修復の >解説ページはいくらでも見つかりますので 了解です 手順もいただいたので、そちらと併せて見てみます ホント、ありがとうございました