1
0
mirror of https://github.com/systemd/systemd synced 2025-11-17 07:44:46 +01:00

Compare commits

..

No commits in common. "5fa2fb65a609aeddd10949df2a1b5ab09f8b455c" and "a4dae3c118ebd0708f767769a05554ee0b871f4c" have entirely different histories.

3 changed files with 18 additions and 55 deletions

View File

@ -608,7 +608,7 @@ System:
TPM2 Support: yes TPM2 Support: yes
Boot into FW: supported ← does the firmware support booting into itself Boot into FW: supported ← does the firmware support booting into itself
Current Boot Loader: ← details about systemd-boot or another boot loader Current Boot Loader: ← details about sd-boot or another boot loader
Product: systemd-boot <replaceable>version</replaceable> implementing the <ulink Product: systemd-boot <replaceable>version</replaceable> implementing the <ulink
url="https://systemd.io/BOOT_LOADER_INTERFACE">Boot Loader Interface</ulink> url="https://systemd.io/BOOT_LOADER_INTERFACE">Boot Loader Interface</ulink>
Features: ✓ Boot counting Features: ✓ Boot counting

View File

@ -383,10 +383,10 @@
<para>Optionally, a random seed for early boot entropy pool provisioning is stored in <para>Optionally, a random seed for early boot entropy pool provisioning is stored in
<filename>/loader/random-seed</filename> in the ESP.</para> <filename>/loader/random-seed</filename> in the ESP.</para>
<para>During initialization, <command>systemd-boot</command> automatically loads all driver files placed <para>During initialization, <command>sd-boot</command> automatically loads all driver files placed in
in the <filename>/EFI/systemd/drivers/</filename> directory of the ESP. The files placed there must have the <filename>/EFI/systemd/drivers/</filename> directory of the ESP. The files placed there must have an
an extension of the EFI architecture ID followed by <filename>.efi</filename> (e.g. for x86-64 this means extension of the EFI architecture ID followed by <filename>.efi</filename> (e.g. for x86-64 this means a
a suffix of <filename>x64.efi</filename>). This may be used to automatically load file system drivers and suffix of <filename>x64.efi</filename>). This may be used to automatically load file system drivers and
similar, to extend the native firmware support.</para> similar, to extend the native firmware support.</para>
<para>Enrollment of Secure Boot variables can be performed manually or automatically if files are available <para>Enrollment of Secure Boot variables can be performed manually or automatically if files are available
@ -711,26 +711,18 @@ uki-url http://example.com/somedir/fooos.efi</programlisting>
<refsect1> <refsect1>
<title>Using <command>systemd-boot</command> in virtual machines</title> <title>Using <command>systemd-boot</command> in virtual machines</title>
<para>When using <ulink url="https://www.qemu.org/docs/master/">qemu</ulink> with <para>When using qemu with OVMF (UEFI Firmware for virtual machines) the <option>-kernel</option> switch
<ulink url="https://www.linux-kvm.org/downloads/lersek/ovmf-whitepaper-c770f8c.txt">OVMF</ulink> works not only for linux kernels, but for any EFI binary, including sd-boot and unified linux
(UEFI Firmware for virtual machines) the <option>-kernel</option> switch works not only for linux kernels. Example command line for loading <command>systemd-boot</command> on x64:</para>
kernels, but for any EFI binary, including <filename>systemd-boot</filename> and unified linux kernels
(UKIs). Example command line for loading <command>systemd-boot</command> on x64:</para>
<para> <para>
<command>qemu-system-x86_64 <command>qemu-system-x86_64 <replaceable>[ ... ]</replaceable>
-drive if=pflash,format=qcow2,readonly=on,file=/usr/share/edk2/ovmf/OVMF_CODE_4M.qcow2 -kernel /usr/lib/systemd/boot/efi/systemd-bootx64.efi</command>
-kernel /usr/lib/systemd/boot/efi/systemd-bootx64.efi
-drive file=<replaceable>...</replaceable>
<replaceable>[ ... ]</replaceable>
</command>
</para> </para>
<para>(The path to the firmware file might need to be adjusted depending on the distribution.) <para>systemd-boot will detect that it was started directly instead of being loaded from ESP and will
<filename>systemd-boot</filename> will detect that it was started directly instead of being loaded from search for the ESP in that case, taking into account boot order information from the hypervisor (if
ESP and will search for the ESP in that case, taking into account boot order information from the available).</para>
hypervisor (if available). Note that for this to yield a useful result, another <option>-drive</option>
argument needs to be used to attach an actual disk image with an ESP.</para>
</refsect1> </refsect1>
<refsect1> <refsect1>

View File

@ -45,19 +45,11 @@
<title>Description</title> <title>Description</title>
<para><command>ukify</command> is a tool whose primary purpose is to combine components (usually a <para><command>ukify</command> is a tool whose primary purpose is to combine components (usually a
kernel, an initrd, and the kernel, an initrd, and a UEFI boot stub) to create a
<citerefentry><refentrytitle>systemd-stub</refentrytitle><manvolnum>7</manvolnum></citerefentry> UEFI <ulink url="https://uapi-group.org/specifications/specs/unified_kernel_image/">Unified Kernel Image (UKI)</ulink>
stub) to create a <ulink url="https://uapi-group.org/specifications/specs/unified_kernel_image/">Unified — a PE binary that can be executed by the firmware to start the embedded linux kernel.
Kernel Image (UKI)</ulink> — a single PE binary that boots the system. When the UKI is executed, the stub See <citerefentry><refentrytitle>systemd-stub</refentrytitle><manvolnum>7</manvolnum></citerefentry>
extracts and boots the embedded linux kernel. The UKI can be started directly by the firmware or through for details about the stub.</para>
a boot loader. When used with <ulink url="https://www.qemu.org/docs/master/">qemu</ulink>, a UKI can also
be executed through "direct kernel boot", see example below.</para>
<para><command>ukify</command> can also be used generate other types of UKI-like images, in particular
extensions. See the description of the <command>build</command> verb below. <command>ukify</command> can
also generate certificates and keys for SecureBoot and PCR signing, see the description of the
<command>genkey</command> verb below. <command>ukify</command> can also print detailed information about
unified kernel images, see the description of <command>inspect</command> verb below.</para>
</refsect1> </refsect1>
<refsect1> <refsect1>
@ -727,27 +719,6 @@
<para>This creates an unsigned UKI <filename>./vmlinuz.unsigned.efi</filename>.</para> <para>This creates an unsigned UKI <filename>./vmlinuz.unsigned.efi</filename>.</para>
</example> </example>
<example>
<title>Direct kernel boot in a virtual machine</title>
<para>When using <ulink url="https://www.qemu.org/docs/master/">qemu</ulink> with
<ulink url="https://www.linux-kvm.org/downloads/lersek/ovmf-whitepaper-c770f8c.txt">OVMF</ulink>
(UEFI Firmware for virtual machines) the <option>-kernel</option> switch can be used directly with a
UKI. Example:</para>
<para>
<command>qemu-kvm
-drive if=pflash,format=qcow2,readonly=on,file=/usr/share/edk2/ovmf/OVMF_CODE_4M.qcow2
-kernel <filename index='false'>./vmlinuz.unsigned.efi</filename>
<replaceable>[ ... ]</replaceable>
</command>
</para>
<para>(The path to the firmware file might need to be adjusted depending on the distribution.) Usually,
another <option>-drive</option> argument would to be used to attach an actual disk image, but this
is not required.</para>
</example>
<example> <example>
<title>All the bells and whistles</title> <title>All the bells and whistles</title>