これがコンテキストです。4つのパーティションを含む1つのHDを備えたラップトップがあります。
現在の「実際の」ブートローダー(つまりMBR)はWindowsのものです。背後では、特定の目的で grub2win を使用し、(hd0,3)上にあるgrub2をチェーンロードするために使用します。
これを行うためにgrub.cfgに追加したエントリは次のとおりです。
menuentry 'Chainloader 3' {
insmod chain
set root=(hd0,3)
chainloader +1
}
不幸なことに、それを使おうとすると、「何もない」、エラーのない黒い画面が表示され、それ以上何をすべきか本当にわかりません。
fdisk -l
の結果は次のとおりです。
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0xa2c2c4f8
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 209717247 104857600 7 HPFS/NTFS/exFAT
/dev/sda2 209717248 420339711 105311232 7 HPFS/NTFS/exFAT
/dev/sda3 420341758 625141759 102400001 5 Extended
Partition 3 does not start on physical sector boundary.
/dev/sda5 420341760 615651327 97654784 83 Linux
/dev/sda6 615653376 625141759 4744192 82 Linux swap / Solaris
ヒント:
論理パーティションは常に5番から始まります。番号3と4をタイプミスしていないことを確認してください。おそらく、5と6である必要があります...または4つのプライマリパーティションがあります!
パーティション番号3(つまり、パーティション自体ではなく拡張定義)に他のグラブがあることを本当に確信していますか?おそらくパーティション番号5を参照しています。
Fdiskから、2つのプライマリパーティション(1と2)、拡張パーティション(3)と2つの論理パーティション(5と6)があることがわかります。
Extended自体にGrubがインストールされているのを見たことがありませんが、パーティションブートセクターにGrubがインストールされているのを見ました(あなたの場合、3ではなく5または6である可能性があります)。
別のヒント:
Grub2メニューで、jouは「c」キーを押してコマンドラインに移動し、コマンドls
を入力すると、表示されるパーティションやディスクなどの名前が表示されます。次に、それらに注意して、パターン(hd0,5)または(hd0、msdos5)または(hd0、gpt5)などを確認します。メニューに戻るには、キー「Esc」を押します。
「Linuxの場合は2:(hd0,3)、(hd0,4)-> Linuxの場合(論理パーティション)」と言っているので、数字の入力を間違えたと思います。ただし、fdiskは、プライマリパーティションが2つ(1と2)しかないことを示しています。また、パーティション番号3は拡張定義であり、ファイルシステムを配置できる場所ではありません。
だから多分あなたは言うでしょう(3&4の代わりに4&5):
Linuxの場合は2:(hd0,4)、(hd0,5)-> Linuxの場合(論理パーティション)。
それはタイプミスですか?または、論理パーティション定義が存在する拡張パーティションの最初のセクターを実際に参照しようとしていますか?最初に期待してください。そうしないと、論理パーティションの定義が破損し、アクセスできなくなります。運が良ければ、Grubインストーラーはその場所にインストールすることを許可しません。
あなたがあなたの質問を修正できることを願っています。
はい、Grubは複数のディスクにまたがるストライプLVM内にあるExt4内に常駐できます。また、チェーンの任意の部分に必要な数のLUKSを追加できます。 Grubはそのようなことには素晴らしいです。
つまり、grub.cfgファイルと残りのファイルはこの複雑なサンプルスキーム内にあります。
等.
注意:Grubが使用するリテラルがわからない場合は、コマンドラインに移動して(「c」キーを押す)、パラメーターなしでコマンドls
を使用してから、悪行税とその表示内容に注意して、メニューは「Esc」キーを使用するだけです。
これは、暗号化デバイス(LUKS)やLVMを使用する場合にも役立ちます。