Arch manual pages

BOOTCTL(1) bootctl BOOTCTL(1)

bootctl - Control the firmware and boot manager settings

bootctl [OPTIONS...] {COMMAND}

bootctl can check the EFI boot loader status, list available boot loaders and boot loader entries, and install, update, or remove the systemd-boot(7) boot loader on the current system.

The following options are understood:

--path=

Path to the EFI System Partition (ESP). If not specified, /efi, /boot, and /boot/efi are checked in turn. It is recommended to mount the ESP to /boot, if possible.

-p, --print-path

This option modifies the behaviour of status. Just print the path to the EFI System Partition (ESP) to standard output and exit.

--no-variables

Do not touch the firmware's boot loader list stored in EFI variables.

--no-pager

Do not pipe output into a pager.

-h, --help

Print a short help text and exit.

--version

Print a short version string and exit.

status
Shows brief information about the system firmware, the boot loader that was used to boot the system, the boot loaders currently available in the ESP, the boot loaders listed in the firmware's list of boot loaders and the current default boot loader entry. If no command is specified, this is the implied default.

install

Installs systemd-boot into the EFI system partition. A copy of systemd-boot will be stored as the EFI default/fallback loader at ESP/EFI/BOOT/BOOT*.EFI. The boot loader is then added to the top of the firmware's boot loader list.

update

Updates all installed versions of systemd-boot(7), if the available version is newer than the version installed in the EFI system partition. This also includes the EFI default/fallback loader at ESP/EFI/BOOT/BOOT*.EFI. The boot loader is then added to end of the firmware's boot loader list if missing.

remove

Removes all installed versions of systemd-boot from the EFI system partition and the firmware's boot loader list.

list

Shows all available boot loader entries implementing the Boot Loader Specification[1], as well as any other entries discovered or automatically generated by the boot loader.

set-default ID, set-oneshot ID

Sets the default boot loader entry. Takes a single boot loader entry ID string as argument. The set-oneshot command will set the default entry only for the next boot, the set-default will set it persistently for all future boots.

On success, 0 is returned, a non-zero failure code otherwise.

If $SYSTEMD_RELAX_ESP_CHECKS=1 is set the validation checks for the ESP are relaxed, and the path specified with --path= may refer to any kind of file system on any kind of partition.

systemd-boot(7), Boot Loader Specification[1], Boot Loader Interface[2]

1.
Boot Loader Specification
https://systemd.io/BOOT_LOADER_SPECIFICATION
2.
Boot Loader Interface
https://systemd.io/BOOT_LOADER_INTERFACE
systemd 241