EFI ファイルを Arch Linux に正しく起動させるにはどうすればよいですか?

EFI ファイルを Arch Linux に正しく起動させるにはどうすればよいですか?

新しい SSD に Arch Linux をインストールしましたが、UEFI で起動する際に問題が発生しています。

USB 上の ISO に正常に起動し、arch-chroot を使用してその環境にアクセスできるため、SSD に Arch Linux を正常にインストールできたと考えています。

以前は、適切なパーティション上の EFI ファイルが最優先になるように UEFI ブート順序を変更していましたefibootmgr。その EFI ファイルを変更すると動作が変わるので、これが機能していることがわかります。

efibootmgr を実行して UEFI をそのパーティションにポイントした後、パーティションが空であることがわかりました。.efiefibootmgrファイルが自動的に作成されるはずですか? そうでない場合、EFI ファイルを作成または取得するにはどうすればよいですか?

Arch Linux ISO USB から EFI ファイルをコピーしようとしました。最初の EFI ファイルは EFI SHELL にブートしますが、ターミナルがスクロールせず、フォントが大きいため、テキストがすぐに画面の下部から印刷されてしまうため、役に立ちません。2 番目の EFI ファイルは ISO USB ドライブを検索し/dev/disk/by-label/、そこからブートしようとします。SSD のホーム パーティションを検索するように指示できれば、これは役に立つかもしれません。

アドバイスがあればよろしくお願いします。

答え1

動作しました。これに遭遇した人を助けるために自分自身で回答しました。

efibootmgr は .efi ファイルを自動的に作成してくれるのでしょうか?

いいえ、efibootmgrはUEFIをEFIファイルにポイントするだけです

EFI ファイルを作成または取得するにはどうすればよいですか?

これを実行する 1 つの方法は、ここで説明するように GRUB を使用することです。インストール

grubこれは、インストールとefibootmgrEFI パーティションのマウントが必要であることを示しています。次に、次のコマンドを発行します。

grub-install --target=x86_64-efi --bootloader-id=<name> --efi-directory=<path-to-efi-mount-point>

<name>、efibootmgr を使用して EFI 優先度を一覧表示するときに表示されるラベルです。このコマンドは、EFI パーティションに EFI ファイルを生成し、その EFI ファイルを指すように EFI ブート優先度を変更します。最後の手順は、grub 構成ファイルを生成することです。

GRUB は非常に柔軟なブートローダーであり、これを使用して EFI ファイルを生成することは、多くの機能のうちの 1 つにすぎないことに注意してください。GRUB のデフォルトの使用例は、UEFI ではなく BIOS であるように見えるため、この呼び出しを見つけるのにかなり時間がかかりました。

関連情報