76 lines
2.5 KiB
Markdown
76 lines
2.5 KiB
Markdown
---
|
|
obj: application
|
|
arch-wiki: https://wiki.archlinux.org/title/Systemd-boot
|
|
rev: 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](Systemd.md), which is installed on an Arch system by default.
|
|
|
|
It is simple to configure but can only start EFI executables such as the [Linux](../Linux.md) kernel EFISTUB, UEFI shell, GRUB, or the [Windows](../../windows/Windows.md) Boot Manager.
|
|
|
|
## Install
|
|
Install:
|
|
```shell
|
|
bootctl install
|
|
```
|
|
|
|
Update:
|
|
```shell
|
|
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:
|
|
```shell
|
|
systemctl reboot --boot-loader-entry=arch-custom.conf
|
|
```
|
|
|
|
Firmware Setup:
|
|
```shell
|
|
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 |
|