1 <?xml version='
1.0'
?> <!--*-nxml-*-->
2 <!DOCTYPE refentry PUBLIC
"-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
5 <!-- SPDX-License-Identifier: LGPL-2.1+ -->
7 <refentry id=
"systemd-boot" conditional='ENABLE_EFI'
8 xmlns:
xi=
"http://www.w3.org/2001/XInclude">
10 <title>systemd-boot
</title>
11 <productname>systemd
</productname>
15 <refentrytitle>systemd-boot
</refentrytitle>
16 <manvolnum>7</manvolnum>
20 <refname>systemd-boot
</refname>
21 <refname>sd-boot
</refname>
22 <refpurpose>A simple UEFI boot manager
</refpurpose>
26 <title>Description
</title>
28 <para><command>systemd-boot
</command> (short:
<command>sd-boot
</command>) is a simple UEFI boot manager. It
29 provides a graphical menu to select the entry to boot and an editor for the kernel command line. systemd-boot
30 supports systems with UEFI firmware only.
</para>
32 <para>systemd-boot loads boot entry information from the EFI system partition (ESP), usually mounted at
33 <filename>/boot
</filename>,
<filename>/efi
</filename>, or
<filename>/boot/efi
</filename> during OS
34 runtime. Configuration file fragments, kernels, initrds and other EFI images to boot generally need to reside on
35 the ESP. Linux kernels must be built with
<option>CONFIG_EFI_STUB
</option> to be able to be directly executed as an
36 EFI image. During boot systemd-boot automatically assembles a list of boot entries from the following
40 <listitem><para>Boot entries defined with
<ulink
41 url=
"https://github.com/systemd/systemd/blob/master/doc/BOOT_LOADER_SPECIFICATION.md">Boot Loader
42 Specification
</ulink> description files located in
<filename>/loader/entries/
</filename> on the ESP. These
43 usually describe Linux kernel images with associated initrd images, but alternatively may also describe
44 arbitrary other EFI executables.
</para></listitem>
46 <listitem><para>Unified kernel images following the
<ulink
47 url=
"https://github.com/systemd/systemd/blob/master/doc/BOOT_LOADER_SPECIFICATION.md">Boot Loader
48 Specification
</ulink>, as executable EFI binaries in
<filename>/EFI/Linux/
</filename> on the ESP.
51 <listitem><para>The Microsoft Windows EFI boot manager, if installed
</para></listitem>
53 <listitem><para>The Apple MacOS X boot manager, if installed
</para></listitem>
55 <listitem><para>The EFI Shell binary, if installed
</para></listitem>
57 <listitem><para>A reboot into the UEFI firmware setup option, if supported by the firmware
</para></listitem>
60 <para><citerefentry><refentrytitle>kernel-install
</refentrytitle><manvolnum>8</manvolnum></citerefentry> may be
61 used to copy kernel images onto the ESP and to generate description files compliant with the Boot Loader
62 Specification.
<citerefentry><refentrytitle>bootctl
</refentrytitle><manvolnum>1</manvolnum></citerefentry> may be
63 used from a running system to locate the ESP, list available entries, and install systemd-boot itself.
</para>
65 <para>systemd-boot will provide information about the time spent in UEFI firmware using the
<ulink
66 url=
"https://www.freedesktop.org/wiki/Software/systemd/BootLoaderInterface">Boot Loader Interface
</ulink>. This
67 information can be displayed using
68 <citerefentry><refentrytitle>systemd-analyze
</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
73 <title>Key bindings
</title>
74 <para>The following keys may be used in the boot menu:
</para>
86 <listitem><para>Navigate up/down in the entry list
</para></listitem>
90 <term>↵ (Enter)
</term>
91 <listitem><para>Boot selected entry
</para></listitem>
96 <listitem><para>Make selected entry the default
</para></listitem>
101 <listitem><para>Edit the kernel command line for selected entry
</para></listitem>
107 <listitem><para>Increase the timeout before default entry is booted
</para></listitem>
113 <listitem><para>Decrease the timeout
</para></listitem>
118 <listitem><para>Show systemd-boot, UEFI, and firmware versions
</para></listitem>
123 <listitem><para>Print status
</para></listitem>
128 <listitem><para>Quit
</para></listitem>
134 <listitem><para>Show a help screen
</para></listitem>
138 <term>Ctrl + l
</term>
139 <listitem><para>Reprint the screen
</para></listitem>
143 <para>The following keys may be used during bootup or in the boot menu to
144 directly boot a specific entry:
</para>
149 <listitem><para>Linux
</para></listitem>
154 <listitem><para>Windows
</para></listitem>
159 <listitem><para>OS X
</para></listitem>
164 <listitem><para>EFI shell
</para></listitem>
177 <listitem><para>Boot entry number
1 …
9</para></listitem>
181 <para>In the editor, most keys simply insert themselves, but the following keys
182 may be used to perform additional actions:
</para>
186 <term>← (Left)
</term>
187 <term>→ (Right)
</term>
190 <listitem><para>Navigate left/right
</para></listitem>
195 <listitem><para>Abort the edit and quit the editor
</para></listitem>
199 <term>Ctrl + k
</term>
200 <listitem><para>Clear the command line
</para></listitem>
204 <term>Ctrl + w
</term>
205 <term>Alt + Backspace
</term>
206 <listitem><para>Delete word backwards
</para></listitem>
210 <term>Alt + d
</term>
211 <listitem><para>Delete word forwards
</para></listitem>
215 <term>↵ (Enter)
</term>
216 <listitem><para>Boot entry with the edited command line
</para></listitem>
220 <para>Note that unless configured otherwise in the UEFI firmware, systemd-boot will
221 use the US keyboard layout, so key labels might not match for keys like +/-.
228 <para>The files systemd-boot reads generally reside on the UEFI ESP which is usually mounted to
229 <filename>/boot/
</filename>,
<filename>/efi/
</filename> or
<filename>/boot/efi
</filename> during OS
230 runtime. systemd-boot reads runtime configuration such as the boot timeout and default entry from
231 <filename>/loader/loader.conf
</filename> on the ESP (in combination with data read from EFI variables). See
232 <citerefentry><refentrytitle>loader.conf
</refentrytitle><manvolnum>5</manvolnum></citerefentry>. Boot entry
233 description files following the
<ulink
234 url=
"https://github.com/systemd/systemd/blob/master/doc/BOOT_LOADER_SPECIFICATION.md">Boot Loader
235 Specification
</ulink> are read from
<filename>/loader/entries/
</filename> on the ESP. Unified kernel boot entries
236 following the
<ulink url=
"https://github.com/systemd/systemd/blob/master/doc/BOOT_LOADER_SPECIFICATION.md">Boot
237 Loader Specification
</ulink> are read from
<filename>/EFI/Linux/
</filename> on the ESP.
</para>
241 <title>See Also
</title>
243 <citerefentry><refentrytitle>bootctl
</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
244 <citerefentry><refentrytitle>loader.conf
</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
245 <ulink url=
"https://github.com/systemd/systemd/blob/master/doc/BOOT_LOADER_SPECIFICATION.md">Boot Loader Specification
</ulink>,
246 <ulink url=
"https://www.freedesktop.org/wiki/Software/systemd/BootLoaderInterface">Boot Loader Interface
</ulink>