この質問を調べましたが、明確な答えが見つかりませんでした...明確な質問も見つかりませんでした。だから簡単な例を挙げましょう。
マイコンピュータには**ハードドライブ2台:**があります。
- ハードドライブ1:UbuntuLinuxとGRUB2存在する膜バイオリアクター。
- ハードドライブ2:どの他のオペレーティングシステム(どのオペレーティングシステムに影響しますか?)とは異なるMBRローダ。
GRUB2のみUbuntuで起動(私の例では、最初のハードドライブにあります)
発行を確実update-grub
に検出されないOSは2番目のハードドライブにありますが、1つもあることを知っています。
入るとバイオス起動時間と起動順序をHDD 2(2番目のOS)に変更良いブーツ。
どうやってできるかGRUB2にアイテムを追加ブートセカンドハードドライブ?
(事実はこの質問ができると思います。いいえ2番目のハードドライブのオペレーティングシステムを指定します。それとも? )
要求に応じて、os-prober
この構成を使用してサンプルマシンの出力を追加します。
luis@threepwood:~$ sudo os-prober
/dev/sdb1:Windows 7 (loader):Windows:chain
/dev/sdb7:Ubuntu 14.04.3 LTS (14.04):Ubuntu:linux
この特定の例では(BIOSで起動順序を変更しました):
sdb
HDD-1です。sda
HDD-2です。
ベストアンサー1
私は通常grub.cfg
手動で作成し、絶対に使用しませんupdate-grub
。そして、起動場所を選択できる、いわゆるデフォルトのGrub2ブートローダがあります。その後、各Linuxディストリビューションに独自のルートパーティションに独自のブートローダをインストールさせます。これにより、Linuxで編集できます。私のメインgrub2ブートローダに触れることなく、独自のブートローダを使用できます。
別のディスクMBRに移動するためにgrub.cfg
ディスクを最初のディスクと見なす必要がない通常のOSには、次の項目が設定されました。
menuentry "Boot from second disk" {
chainloader (hd1)+1
}
menuentry "Boot from third disk" {
chainloader (hd2)+1
}
menuentry "Boot from fourth disk" {
chainloader (hd3)+1
}
だから私が望む別のディスクにMBRをロードします。
ただし、最初のディスクと同じように、他のディスクを見たいと思うトリッキーなLinux(および一部のWindows)では、grubメニュー項目にいくつかのコマンドを追加して次のようになります。
menuentry "Boot from second disk and see it as first disk" {
set root=(hd1)
drivemap -s hd0 hd1
chainloader +1
}
menuentry "Boot from third disk and see it as first disk" {
set root=(hd2)
drivemap -s hd0 hd2
chainloader +1
}
menuentry "Boot from fourth disk and see it as first disk" {
set root=(hd3)
drivemap -s hd0 hd3
chainloader +1
}
すべて詳しく説明します。
(hd#)はディスクを表します。ここで、#は0から始まります。
Drivemapはドライブスワップを実行するため、すべてのディスクを最初のディスクまたは希望の番号で表示できます(表示されている2つのディスクの順序を変更します)。
chainloader(hd#)+ 1はディスクのMBRにジャンプします。
chainloader +1(ルート)に保存された最初のセクタにジャンプ
set root=... (root) が所有する項目を設定します。
(root)は、入力を少なくするために使用できる変数と同じです。
ファイルの完全な文書を表示するには、grub.cfg
公式ウェブページを確認してください。