Из любопытства я пробую systemd-boot на моем ноутбуке с UEFI с безопасной загрузкой. Установка GRUB по умолчанию работает нормально.
Для systemd-boot большинство поисков приводят кэта страница. Это включает установку systemd-boot с bootctl
, создание loader.conf
, создание скрипта ядра postinst zz-update-systemd-boot
. Все выглядит хорошо до этого момента, хотя я не понимаю, почему у systemd-boot нет драйвера ext4 fs для доступа к ядрам. В любом случае, как и ожидалось, это не загружается из-за безопасной загрузки.
Раздел безопасной загрузки на этой странице содержит настройку PreLoader.efi
& HashTool.efi
. После выполнения этих шагов загрузка системы показывает меню systemd-boot, но после выбора Ubuntu выдается эта ошибка:
EFI stub: UEFI Secure Boot is enabled.
Насколько я понимаю, это PreLoader
подписанный двоичный файл, который принимается UEFI. Затем он загружает loader.efi
(переименованный systemd-bootx64.efi
), хэш которого был зарегистрирован. Это загружает vmlinuz
ядро, хэш которого также был зарегистрирован. Таким образом, похоже, что безопасная цепочка в порядке, но загрузка все равно не удалась. Похоже, что подпись Canonical для ядра здесь не играет роли.
Как это работает и правильно ли я понял аспекты безопасности?
решение1
Я выполнил вариант страницы, на которую вы ссылаетесь, за исключением параметров безопасной загрузки.
К сожалению, после внесения изменений linux-generic, linux-headers-generic и linux-image-generic в Ubuntu настаивают на установке GRUBв дополнение кустановку systemd-boot и установку GRUB в качестве параметра загрузки по умолчанию при каждом обновлении ядра apt.
В результате, при следующей перезагрузке коробка больше не загружается с помощью systemd-boot. Так что, похоже, нужна последняя команда для запуска efibootmgr, чтобы переустановить порядок загрузки для повторного использования "ubuntu".
Чтобы избежать этой проблемы, я думаю, что DEB-пакеты Ubuntu linux-generic, linux-headers-generic и linux-image-generic следует настроить на прием либо GRUBилиsystemd-boot в качестве принятых загрузчиков, а не принудительно устанавливать GRUB.