systemd-boot, sd-boot — A simple UEFI boot manager
systemd-boot (short: sd-boot) is a simple UEFI boot manager. It provides a graphical menu to select the entry to boot and an editor for the kernel command line. systemd-boot supports systems with UEFI firmware only.
systemd-boot loads boot entry information from the EFI system partition (ESP), usually mounted at
/boot
, /efi
, or /boot/efi
during OS
runtime. Configuration file fragments, kernels, initrds and other EFI images to boot generally need to reside on
the ESP. Linux kernels must be built with CONFIG_EFI_STUB
to be able to be directly executed as an
EFI image. During boot systemd-boot automatically assembles a list of boot entries from the following
sources:
Boot entries defined with Boot Loader
Specification description files located in /loader/entries/
on the ESP. These
usually describe Linux kernel images with associated initrd images, but alternatively may also describe
arbitrary other EFI executables.
Unified kernel images following the Boot Loader
Specification, as executable EFI binaries in /EFI/Linux/
on the ESP.
The Microsoft Windows EFI boot manager, if installed
The Apple MacOS X boot manager, if installed
The EFI Shell binary, if installed
A reboot into the UEFI firmware setup option, if supported by the firmware
kernel-install(8) may be used to copy kernel images onto the ESP and to generate description files compliant with the Boot Loader Specification. bootctl(1) may be used from a running system to locate the ESP, list available entries, and install systemd-boot itself.
systemd-boot will provide information about the time spent in UEFI firmware using the Boot Loader Interface. This information can be displayed using systemd-analyze(1).
The following keys may be used in the boot menu:
Navigate up/down in the entry list
Boot selected entry
Make selected entry the default
Edit the kernel command line for selected entry
Increase the timeout before default entry is booted
Decrease the timeout
Show systemd-boot, UEFI, and firmware versions
Print status
Quit
Show a help screen
Reprint the screen
The following keys may be used during bootup or in the boot menu to directly boot a specific entry:
In the editor, most keys simply insert themselves, but the following keys may be used to perform additional actions:
Note that unless configured otherwise in the UEFI firmware, systemd-boot will use the US keyboard layout, so key labels might not match for keys like +/-.
The files systemd-boot reads generally reside on the UEFI ESP which is usually mounted to
/boot/
, /efi/
or /boot/efi
during OS
runtime. systemd-boot reads runtime configuration such as the boot timeout and default entry from
/loader/loader.conf
on the ESP (in combination with data read from EFI variables). See
loader.conf(5). Boot entry
description files following the Boot Loader
Specification are read from /loader/entries/
on the ESP. Unified kernel boot entries
following the Boot
Loader Specification are read from /EFI/Linux/
on the ESP.