デュアルブートへのGRUBのインストール

デュアルブートへのGRUBのインストール

新しいハードドライブにWindows 7およびDebian 7オペレーティングシステムをインストールしました。いつものように、Windowsを最初にインストールしてからDebianをインストールしました。

最初の試みでは、コンピュータがWindowsだけで起動したため、GRUBが正しくインストールされていないようです。私はこれをdebian.orgで見つけ、そのアドバイスに従いました:

grub-installは、インストール中に複数のディスクがある場合(USBスティックからインストーラを起動したときに頻繁に発生するハードドライブやUSBスティックなど)、問題が発生する可能性があります。 GRUBブートローダが次にインストールされていると何度も報告されています。新しくインストールされたシステムを含むハードドライブではなくUSBスティックに保存されます。

このような状況を避けるために、インストール中に次の質問に「いいえ」と答えてください。 「GRUBブートローダをマスターブートレコードにインストールしますか?」次の手順では、「デバイスの使用」で正しいデバイスを指定できる必要があります。ブートローダによってインストールされました」。

これを行うと起動時にGRUBが表示されますが、Windowsを選択すると画面が黒くなり、すぐにGRUBメニューに戻ります。最初のパーティションはブートフラグを持つパーティションなので、GRUBを最初のパーティションにインストールしました。

私のパーティションは次のとおりです。

  1. 100MBシステム予約済み
  2. 195GBウィンドウ
  3. 2GBスワップ
  4. 40GB Linux

後でWindows CDを使ってMBRを修復しましたが、もちろんDebianは利用できません。

GRUBを他の場所にインストールする必要がありますか、それとも別の問題ですか?

ベストアンサー1

MBRpartitioningの代わりに使用するとしますGPT

まず、MBRをバックアップして最終的に復元できます(hdaがターゲットディスクであると仮定)。

 dd if=/dev/hda of=/path/mbr-backup bs=512 count=1 # backup
 dd if=/path/mbr-backup of=/dev/hda bs=512 count=1 # restore

hda1ディスクの代わりにパーティションに grub をインストールする場合は明らかです。

ノートディスク(hda)にある場合は、バックアップと復元の間でパーティションテーブルを変更しないでください。

次に、現在Debianがインストールされている場合は、Live CDを起動してDebianのルートディレクトリをどこかにマウントしてください。

mkdir /tmp/x
mount /dev/hda1 /tmp/x # Debian root partition
# mount some needed filesystem
mount proc /tmp/x/proc -t proc
mount sysfs /tmp/x/sys -t sysfs
mount --bind /dev /tmp/x/dev

パーティションにchrootし、grubを再インストールします。

chroot /tmp/x
grub-install /dev/hda # or hda1 for the partition

まだ必要かどうかはわかりませんupdate-grub(確認する必要があります)。

grubはos-proberウィンドウを見つけなければなりません。起動に失敗した場合、チェーンローダーに別の問題がある可能性があります。

修正する

ディスクがパーティション化されている場合は、GPTこのFAQを参照してください。

WindowsとGPTのよくある質問

特にこれは:

Windows 7、Windows Vista、およびWindows Server 2008はGPTディスクから読み取り、書き込み、起動できますか?

はい、どのバージョンでもGPTパーティションディスクを使用してデータを保存できます。起動は、UEFIベースのシステムの64ビットバージョンでのみサポートされています。

パーティションをBIOS使用している場合。MBRUEFIGPT

おすすめ記事