EFIシステムパーティションで複数のブートローダーが機能する仕組み


14

私のESPはこんな感じ

Boot Dell fedora Microsoft

ブートディレクトリには、名前が付けられbootx64.efiたブートローダーがあり、これが最初に開始されるデフォルトのブートローダーであると理解しています。ただし、fedoraディレクトリには、という別のブートローダー(grub2)がありgrubx64.efiます。

これらの各ブートローダーの機能は何ですか?どちらが提供していboot-menuますか?



これはセキュアブートと関係がありますか?
user3247608

Windows 8ライセンスに関連しています。
ペルシャ湾14年

おそらく質問でこれを明確にすべきだった-マシン上でセキュアブートが無効になっています。質問はWindows 8とは無関係です。
user324760814年

win8とセキュアブートのストーリーが大胆だったとき、grubといくつかのブートローダーにはいくつかのファイルがあります。
ペルシャ湾14年

回答:


16

bootx64.efi最初に始めません。ほとんどの場合、まったく開始されません。

EFIファームウェアには独自の「ブートメニュー」があり、GRUBが提供するメニューに似ていますが、ブートプロセスの初期段階にあります。GRUBで実行するLinuxカーネルを選択できるように、EFIブートメニューで実行するEFIブートプログラムを選択できます。選択はGRUB自体やWindowsブートローダーなどです。(また、GRUBのメニューと同様に、EFIブートメニューは通常デフォルトでは表示されません。起動中にホットキーを押して表示する必要があります。)

EFIブートメニューのエントリは、マザーボードのNVRAM(「BIOS設定」メモリ)に保存されている構成データによって定義されます。この設定はファイルに保存されませんが、Fedoraではefibootmgrプログラムを使用して表示できるはずです。各エントリには、人間が読める名前(メニューに表示)とEFIシステムパーティションのブートプログラムへのパス、およびホットキーを押さないときにデフォルトでブートされるエントリを決定する優先順位番号が保持されます。メニューを表示します。

これらのNVRAMブートエントリは、(通常)オペレーティングシステムのインストーラーによって作成されます。OSをインストールし、ブートローダーファイルをEFIシステムパーティションに配置すると、NVRAM構成にエントリが追加され、EFIブートメニューで新しいブートローダーが使用できるようになります。(多くの場合、その新しいエントリがデフォルトになるため、インストールしたOSは、EFIブートメニューを開いて手動で選択する必要なく、独自に起動します。)

このBoot/bootx64.efiプログラムは、ディスク上の他のブートプログラムを参照するNVRAMブートエントリでEFIが構成されていない場合のフォールバックです。ブータブルCDやUSBドライブなどのリムーバブルメディアでは重要ですが、ハードドライブでは通常使用されません。Windowsインストーラーは、Boot/bootx64.efiフェールセーフとして作成します。これは単なるコピーですMicrosoft/Boot/bootmgfw.efi(少なくともWindows 7では、他のバージョンについては知りません)。

私のシステムでは、Microsoft bootx64.efiEFI Shellのコピーに置き換えました。そのため、NVRAMブートエントリがなく、フォールバックブートローダーに実際に依存していることに気付いた場合、状況を調べることができるシェルにドロップされますシステムがWindowsを自動的に起動する代わりに、他の起動プログラムの1つを手動で実行します。(システムが正常に動作している場合でもEFIシェルを開始するオプションがあるように、GRUBメニューにエントリを追加しました。)

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