Как заставить файл EFI правильно загружаться в Arch Linux?

Как заставить файл EFI правильно загружаться в Arch Linux?

Я установил Arch Linux на новый SSD, и у меня возникли проблемы с загрузкой через UEFI.

Я успешно загрузился с ISO-образа на USB-накопителе и считаю, что успешно установил Arch Linux на SSD, поскольку могу использовать arch-chroot для доступа к этой среде.

Я использовал efibootmgrдля изменения порядка загрузки UEFI так, чтобы наивысший приоритет был у файла EFI на соответствующем разделе. Я знаю, что это работает, потому что если я изменю этот файл EFI, поведение изменится.

После запуска efibootmgr для указания UEFI на этот раздел я увидел, что раздел пуст. efibootmgrДолжен ли он заполнить файл .efi для меня? Если нет, как мне создать или получить файл EFI?

Я пробовал копировать файлы EFI с моего Arch Linux ISO USB. Первый загружается в EFI SHELL, но это бесполезно, потому что терминал не прокручивается, а шрифт огромный, поэтому текст очень быстро печатается за пределами нижней части экрана. Второй файл EFI ищет диск ISO USB /dev/disk/by-label/и пытается загрузиться с него. Это может быть полезно, если я могу указать ему искать домашний раздел моего SSD.

Любые советы приветствуются.

решение1

У меня получилось, отвечаю сам себе, чтобы помочь всем, кто с этим столкнется.

Должен ли efibootmgr заполнить файл .efi?

Нет, efibootmgr просто указывает UEFI на файл EFI.

как создать или получить файл EFI?

Один из способов сделать это — использовать GRUB, как описано здесь:https://itsfoss.com/install-arch-linux/

Что говорит нам, что нам нужно grubи efibootmgrустановленный, и смонтированный раздел EFI. Затем выполните эту команду:

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

Где <name>только метка, которая появится при перечислении приоритета EFI с помощью efibootmgr. Команда сгенерирует файл EFI на разделе EFI и изменит приоритет загрузки EFI, чтобы он указывал на этот файл EFI. Последний шаг — сгенерировать файл конфигурации grub.

Обратите внимание, что GRUB — очень гибкий загрузчик, и его использование для генерации файлов EFI — лишь одна из многих функций. По умолчанию grub используется с BIOS, а не с UEFI, поэтому мне потребовалось некоторое время, чтобы найти этот вызов.

Связанный контент