Linuxパーティションとファイルシステムに関する比較的古いテキストを読んでいます(LPIC1認定聖書 )。それは言う:
Linuxブートローダーの一部のバージョンは、ディスクの最初の1024シリンダーの外側にある
カーネルにアクセスできません。ドライブの先頭に/boot
パーティションを配置することで、起動時にカーネルにアクセスするときに
問題が発生しないことを保証できます。この問題は、
最初のパーティションにある別の
オペレーティングシステムと一緒にLinuxをデュアルブートする場合に最も頻繁に発生します。
ブートローダーが「ディスク上の最初の1024シリンダーの外側のカーネルにアクセスできない」のはなぜですか。 「?
また、「ドライブの先頭に/bootパーティションを配置する」とは何ですか。 」という意味ですか?
承認された回答:
これは、Linux自体ではなく、非常に古いBIOSとブートローダーを使用することによって課せられる制限です。 BIOSは、ディスクの最初の1024シリンダーにしかアクセスできません(シリンダー/ヘッド/セクターの詳細については、ここを参照してください)。この制限は、単純な性質のために独自のディスクドライバーを持たず、BIOSサービスを使用してディスクにアクセスするブートローダーにも適用されます。
これは、ブートローダーとカーネルの両方が(それをロードするのはブートローダーの仕事であるため)、この制限のあるシステムの最初の1024シリンダー内になければならないことを意味しました。これを行う簡単な方法は、別の/boot
を作成することでした。 カーネルを含むパーティションをドライブの先頭に配置します(通常は最初のパーティションにするだけです)。これは、もちろんパーティションが大きすぎない限り、最初の1024シリンダー内に物理的に存在することを意味します。
この制限は古いBIOSにのみ適用されるため、問題ではなくなりました。また、最近のブートローダー(GRUBなど)の多くは独自のディスクドライバーを備えているため、BIOSサービスに依存する必要はありません。最新のブートローダーは/boot
を使用する場合があります 他の目的のためですが、別のパーティションにある必要はありません 最初の1024シリンダー内(ただし、/boot
が必要な場合が多くあります。 別のパーティションにあります。