mirror of
https://github.com/qemu/qemu.git
synced 2026-07-09 01:56:21 +00:00
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> Link: https://lore.kernel.org/qemu-devel/20260612161707.158029-1-kraxel@redhat.com Signed-off-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
48 lines
1.8 KiB
ReStructuredText
48 lines
1.8 KiB
ReStructuredText
.. _direct_005flinux_005fboot:
|
|
|
|
Direct Linux Boot
|
|
-----------------
|
|
|
|
This section explains how to launch a Linux kernel inside QEMU without
|
|
having to make a full bootable image. It is very useful for fast Linux
|
|
kernel testing.
|
|
|
|
The syntax is:
|
|
|
|
.. parsed-literal::
|
|
|
|
|qemu_system| -kernel bzImage -drive file=rootdisk.img,format=raw -append "root=/dev/sda"
|
|
|
|
Use ``-kernel`` to provide the Linux kernel image and ``-append`` to
|
|
give the kernel command line arguments. The ``-initrd`` option can be
|
|
used to provide an INITRD image.
|
|
|
|
The ``-shim`` option specifies the ``shim.efi`` binary. This is needed
|
|
when you are booting UEFI firmware and using the ``-kernel`` option to
|
|
tell UEFI to boot a specific kernel image, and the UEFI firmware you
|
|
are booting has UEFI secure boot enabled.
|
|
|
|
When this option is specified, the guest UEFI firmware will first
|
|
load, verify and run the shim binary, which is typically signed by
|
|
Microsoft so the firmware accepts it. The shim binary in turn will
|
|
load and verify the Linux kernel. The kernel is typically signed by
|
|
the distro and the certificates needed to verify them are compiled
|
|
into the shim binary, so shim and kernel must come from the same Linux
|
|
distribution.
|
|
|
|
Usually you can find shim.efi as ``EFI/BOOT/BOOT{X64,AA64}.EFI`` on
|
|
distro install media. You might find a second shim copy in the
|
|
``EFI/$distro/`` directory.
|
|
|
|
If you do not need graphical output, you can disable it and redirect the
|
|
virtual serial port and the QEMU monitor to the console with the
|
|
``-nographic`` option. The typical command line is:
|
|
|
|
.. parsed-literal::
|
|
|
|
|qemu_system| -kernel bzImage -drive file=rootdisk.img,format=raw \
|
|
-append "root=/dev/sda console=ttyS0" -nographic
|
|
|
|
Use :kbd:`Ctrl+a c` to switch between the serial console and the monitor (see
|
|
:ref:`GUI_keys`).
|