グラブの場所-それはMBRまたは他の場所に行きましたか?


8

LinuxとWindows 7のデュアルブートセットアップで、Grubをブートローダーとして使用しています。

私のパーティションテーブルは次のようになります。

100 MB System Reserved Windows 7
500 GB Windows 7
100 MB /boot - ext2
500 GB linux, swap, etc.

ここでこの設定を行った後、GRUBがどこにインストールされたかに興味があります。

System ReservedパーティションはWindows 7のブートパーティションだと思いましたが、Grubがそれを書き換えた場合(マスターブートレコードを想定しています)、Windows 7は実行できないようです。

Grubはどこにそれ自体をインストールし、それでもWindowsとLinuxの両方を指し示すことができますか?パーティションの設定方法に依存しますか?


そのディストリビューションのインストーラーにGrubをインストールする場所を明示的に指示しなかった場合は、MBRにあるはずです。また、最初にWindowsをインストールしたか、Linuxを最初にインストールしたかによっても異なります。詳細については、tinyurl.com/jha3stinyurl.com/ycyr2ms
bitek

回答:


6

Windowsがインストールされると、マスターのブートレコードにブートローダー(NTではXPからNTLDR、その後はwinboot)が読み込まboot.iniれ、ブートリストが表示されます。そのリストから何かを選択すると、ブートローダーのジョブが完了し、ドライブの実際のパーティションから適切なカーネルが起動します。

Grubも同じことを行います。ブートローダーはgrub.conf/ menu.lstリストを表示するためだけにあり、何かを選択すると、通常のパーティションに制御を移します。したがって、grubはMBRのNTLDR / winbootを上書きしますが、通常のパーティションには何も上書きせず、ブートリストからWindowsを選択した場合にWindowsパーティションに制御を移す方法を知っています。


Linux 2ndをインストールします。常により簡単な生活のために覚えておくべきキーポイントです!
Chris Huang-Leaver

はい、私はそれを学びました、クリス。:)
2010

あなたはgrubが100MBのsysにインストールされていることを意味します。パーティション?では、なぜ別の100mbパーティションがあるのでしょうか?
RogUE 2016年

2

Grubはドライブのマスターブートレコードに自分自身をインストールします。マスターブートレコードはパーティションドライブの最初のセクターであり、パーティション自体ではないことを理解することが重要です。詳細については、ウィキペディアを参照してください

この情報が与えられると、基本的にGrubはWindows 7がインストールしたMBR情報を上書きしますが、Windows 7が作成する「システム予約済みパーティション」には触れません(要求しない限り)。新しいMBRはシステムにGRUBをロードするように通知するだけで、GRUBは適切なOSが確実にロードされるようにします。これにより、オペレーティングシステムを簡単に切り替えることができます。


それで、システム予約パーティションはmbrにありませんか?
ムッシュ

いいえ、そうではありません。システム予約パーティションは、Windowsによって作成される/bootパーティションであり、Linux にあるパーティションと性質が似ています。そのパーティションとMBRは2つの異なるものです。
スコットアンダーソン

1

MBR以外の場所にGRUBをインストールするのは、Macを使用しているときだけです。デュアルブートに関する質問全体がかなり複雑になります。一般的なケースでは、GRUBがMBRにインストールされ、NTLDRが上書きされ、LinuxまたはWindowsを起動できるようになります。


1

ここには、混乱を招くものがあります。まず、ディスクがパーティション化されている場合(スライス=プライマリパーティション)、各スライスに「パーティションブートレコード」があることを知る必要があります。ディスクをフォーマットすると、最初のセクターは「ブートセクター」と呼ばれます。ブートセクターは、ブート可能としてフラグが立てられたパーティションからロードされて実行されます。

GRUBはこの領域に512バイトしかなく、stage1と呼ばれています。ステージ1は単にステージ2(または1.5)をロードします。これは、menu.lstファイルとその他のモジュールをロードするファイルです。

Stage1.5(またはStage2)は少量のコードからmenu.lstをロードするため、そのファイルシステム固有(FSで/boot/menu.lstを見つけることができる必要があります)。

詳細については、こちらをご覧ください。

簡単に言うと、Stage1はMBRにありますが、GRUBは単にstage1ではなく、Stage1以外のすべてが/ bootにあります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.