knowledge/technology/linux/systemd/systemd-boot.md
2024-12-17 10:56:02 +01:00

2.5 KiB

obj arch-wiki rev
application https://wiki.archlinux.org/title/Systemd-boot 2024-12-17

Systemd Boot

systemd-boot is a simple UEFI boot manager which executes configured EFI images. The default entry is selected by a configured pattern (glob) or an on-screen menu to be navigated via arrow keys. It is included with systemd, which is installed on an Arch system by default.

It is simple to configure but can only start EFI executables such as the Linux kernel EFISTUB, UEFI shell, GRUB, or the Windows Boot Manager.

Install

Install:

bootctl install

Update:

bootctl update

Configuration

The loader configuration is stored in the file _esp_/loader/loader.conf.

Example:

default  arch.conf
timeout  4
console-mode max
editor   no

Adding loaders

systemd-boot will search for boot menu items in _esp_/loader/entries/*.conf.

Values:

  • title : Name
  • version : Kernel Version
  • efi : EFI Executable
  • options : Kernel Parameter

Example:
_esp_/loader/entries/arch.conf

title   Arch Linux
linux   /vmlinuz-linux
initrd  /intel-ucode.img
initrd  /initramfs-linux.img
options root="LABEL=_arch_os_" rw

Changing Boot

Choosing next boot:

systemctl reboot --boot-loader-entry=arch-custom.conf

Firmware Setup:

systemctl reboot --firmware-setup

Keybindings

While the menu is shown, the following keys are active:

Key Description
Up / Down Select menu entry
Enter Boot the selected entry
d select the default entry to boot (stored in a non-volatile EFI variable)
t / T adjust the timeout (stored in a non-volatile EFI variable)
e edit the option line (kernel command line) for this bootup to pass to the EFI image
Q quit
v show the systemd-boot and UEFI version
P print the current configuration to the console