私のESPはこのように見えます
Boot Dell Fedora Microsoft
ブートディレクトリでは、それらはbootx64.efi
という名前のブートローダーです。これは、最初に起動するデフォルトのブートローダーであることを理解しています。しかし、Fedoraディレクトリには、grubx64.efi
という名前の別のブートローダー(grub2)があります。
これらの各ブートローダーの機能は何ですか?どちらがboot-menu
を提供しますか?
bootx64.efi
は最初に開始されません。ほとんどの場合、それはまったく始まりません。
EFIファームウェアには、独自の「ブートメニュー」があります。これは、GRUBによって提示されるメニューに似ていますが、ブートプロセスの初期段階にあります。GRUB実行するLinuxカーネルを選択すると、EFIブートメニューで実行するEFIブートプログラムを選択できます。選択肢はGRUB自体、またはWindowsブートローダーのようなものです(GRUBのメニューと同様に、 EFIブートメニューは通常、デフォルトでは表示されません。これを表示するには、起動中にホットキーを押す必要があります。)
EFIブートメニューのエントリは、マザーボードのNVRAM(「BIOS設定」メモリ)に保存されている構成データによって定義されます。この設定はファイルに保存されませんが、Fedoraではefibootmgr
プログラムを使用して確認できます。各エントリには、人間が読める名前(メニューに表示)とEFIシステムパーティションのブートプログラムへのパス、およびホットキーを押さない場合にデフォルトでブートされるエントリを決定する優先順位番号が含まれますメニューを表示します。
これらのNVRAMブートエントリは、(通常)オペレーティングシステムのインストーラーによって作成されます。 OSをインストールし、ブートローダーファイルをEFIシステムパーティションに配置すると、NVRAM構成にエントリが追加され、新しいブートローダーがEFIブートメニューで使用できるようになります。 (多くの場合、その新しいエントリがデフォルトになるため、EFIブートメニューを開いて手動で選択する必要なく、インストールしたOSが自動的に起動します。)
Boot/bootx64.efi
プログラムは、ディスク上の他のブートプログラムを参照するNVRAMブートエントリでEFIが構成されていない場合のフォールバックです。ブータブルCDやUSBドライブなどのリムーバブルメディアでは重要ですが、ハードドライブでは、通常は使用されません。 WindowsインストーラーはBoot/bootx64.efi
をフェイルセーフとして作成します。これはMicrosoft/Boot/bootmgfw.efi
の単なるコピーです(少なくともWindows 7では。他のバージョンについてはわかりません)。
私のシステムでは、Microsoft bootx64.efi
を EFI Shell のコピーに置き換えたので、NVRAMブートエントリがなく、フォールバックブートローダーに依存しているとしたらシステムにWindowsを自動的にブートさせるのではなく、状況を調査して他のブートプログラムの1つを手動で実行できるシェルにドロップしました。 (GRUBメニューにエントリを追加したので、システムが正常に動作している場合でもEFIシェルを起動することができます。)