私はGrubをブートローダとして使用して、LinuxとWindows 7のデュアルブート設定を持っています。
私のパーティションテーブルは次のとおりです。
100 MB System Reserved Windows 7
500 GB Windows 7
100 MB /boot - ext2
500 GB linux, swap, etc.
この設定が完了したら、GRUBがどこにインストールされるのか疑問に思います。
システム予約パーティションがWindows 7のブートパーティションであることがわかりました。
Grubはどこに独自にインストールされ、まだWindowsとLinuxの両方を指すことができますか?パーティションの設定方法によって異なりますか?
答え1
Windowsが独自にインストールされると、ブートローダ(XPではNTからNTLDRへ、その後winboot)がマスターブートレコードに配置され、ブートリストが表示されますboot.ini
。このリストからエントリを選択すると、ブートローダの操作が完了し、そのカーネルがドライブの物理パーティションから起動します。
Grubは同じことをします。ブートローダは単に表示grub.conf
/menu.lst
リスト用であり、一度何かを選択すると、制御権は通常のパーティションに転送されます。したがって、grubはMBRのNTLDR / winbootを上書きしますが、通常のパーティションでは何も上書きせず、起動リストからWindowsを選択するとWindowsパーティションに制御を転送する方法がわかります。
答え2
Grubは、ドライブのマスターブートレコードに独自にインストールされます。マスターブートレコードは、パーティション自体ではなく、パーティションドライブの最初のセクタであることを認識することが重要です。バラよりウィキペディアより多くの情報を知りたい場合
この情報を使用して、GrubはデフォルトでWindows 7インストールのMBR情報を上書きしますが、Windows 7で作成された「システム予約パーティション」には触れません(ユーザーが要求しない限り)。新しいMBRはシステムにGRUBをロードするように指示し、GRUBは正しいオペレーティングシステムがロードされていることを確認します。これにより、オペレーティングシステムを簡単に切り替えることができます。
答え3
MBR以外の場所にGRUBをインストールした唯一のケースは、Macでした。完全なデュアルブート問題はMacでかなり複雑になりました。通常、GRUBはMBRにインストールされ、NTLDRを上書きしてLinuxまたはWindowsを起動できます。
答え4
ここに混乱するものがあります。まず、ディスクが分割されると、各スライス(スライス=プライマリパーティション)に「パーティションブートレコード」があることに注意してください。ディスクをフォーマットするときの最初のセクタは「ブートセクタ」と呼ばれます。ブートセクタは、ブート可能とマークされたパーティションでロードされ実行されます。
GRUBは、stage1というこの領域に512バイトしかありません。ステップ1では、menu.lstファイルと他のモジュールをロードするファイルstage2(または1.5)のみをロードします。
Stage1.5(またはStage2)は少量のコードでmenu.lstをロードするため、これはファイルシステムによって異なります(FSで見つけるには/ boot / menu.lstが必要です)。
見るここよく読んでください。
簡単に言えば、Stage1はMBRにありますが、GRUBはstage1だけでなくStage1を除くすべてが/bootにあります。