Wie installiere ich systemd-boot richtig?

Wie installiere ich systemd-boot richtig?

Aus Neugier probiere ich systemd-boot auf meinem Laptop aus, der über UEFI mit sicherem Boot verfügt. Die Standard-GRUB-Installation funktioniert einwandfrei.

Für systemd-boot führen die meisten Suchvorgänge zudiese Seite. Dies beinhaltet die Installation von systemd-boot mit bootctl, die Erstellung von loader.conf, die Erstellung eines Kernel-Postinst- zz-update-systemd-bootSkripts. Bis hierhin sieht alles gut aus, obwohl ich nicht verstehe, warum systemd-boot keinen Ext4-FS-Treiber hat, um auf die Kernel zuzugreifen. Wie erwartet schlägt der Start aufgrund des sicheren Starts fehl.

Der Abschnitt „Sicherer Start“ auf dieser Seite enthält das PreLoader.efi& HashTool.efi-Setup. Nachdem Sie die Schritte ausgeführt haben, wird beim Systemstart das Systemd-Boot-Menü angezeigt. Nach der Auswahl von Ubuntu wird jedoch dieser Fehler ausgegeben:

EFI stub: UEFI Secure Boot is enabled.

Soweit ich es verstehe, handelt es PreLoadersich um eine signierte Binärdatei, die von UEFI akzeptiert wird. Diese lädt dann die loader.efi(umbenannte systemd-bootx64.efi), deren Hash registriert wurde. Dies lädt den vmlinuzKernel, dessen Hash ebenfalls registriert wurde. Es scheint also, dass die sichere Kette in Ordnung ist, aber der Bootvorgang trotzdem fehlschlägt. Es scheint, dass die Signatur von Canonical für den Kernel hier keine Rolle spielt.

Wie bekomme ich das zum Laufen und habe ich die Sicherheitsaspekte richtig verstanden?

Antwort1

Ich habe eine Variante der Seite befolgt, auf die Sie sich beziehen, abzüglich der Secure Boot-Optionen.

Leider bestehen Ubuntus linux-generic, linux-headers-generic und linux-image-generic nach der Durchführung der Änderungen auf der Installation von GRUBzusätzlich zudie systemd-boot-Installation und legen Sie GRUB als Standard-Boot-Option bei jedem Apt-Update des Kernels fest.

Dies führt dazu, dass die Box beim nächsten Neustart nicht mehr mit systemd-boot bootet. Was also erforderlich zu sein scheint, ist ein abschließender Befehl zum Ausführen von efibootmgr, um die Startreihenfolge zurückzusetzen und wieder „ubuntu“ zu verwenden.

Um diesen Ärger zu vermeiden, sollten Ubuntus DEB-Pakete linux-generic, linux-headers-generic und linux-image-generic so konfiguriert werden, dass sie entweder GRUB akzeptieren.odersystemd-boot als akzeptierte Bootloader, anstatt GRUB zwangsweise zu installieren.

verwandte Informationen