Reference

debefivm-run(1)

Run a virtual machine from an EFI-bootable raw disk image

NAME

debefivm-run - Run a virtual machine from an EFI-bootable raw disk image

SYNOPSIS

-debefivm-run [-a] architecture] [-i image] [-s sshport] [-- qemu options]

DESCRIPTION

debefivm-run is essentially a thing wrapper around qemu for running a virtual machine from an UEFI bootable raw disk image. Such an image may be created using debefivm-create or with another image creator, but its use is limited to architectures supporting EFI booting.

OPTIONS

-a architecture, --architecture=architecture

Override the Debian architecture of the provided image. If the image uses architecture-specific type UUIDs for the root partition, the architecture can be detected. Otherwise, the host's architecture is assumed. The images created by debefivm-create employ these UUIDs. The value is used to determine the correct emulator binary as well as suitable EFI firmware.

--efi-vars=variablefile

EFI variables can be changed and retained across reboots of a virtual machine if a separate variable file is supplied. The passed file is created from a template if absent. If absent, a read-only variable store will be supplied to the virtual machine.

-i image, --image=image

This option specifies the location of the virtual machine image file. By default vm.img in the working directory is used.

--netopt=option

debefivm-run sets up a user mode network by default. It therefore passes a -netdev option to qemu. Using this option, you can customize the value of that -netdev option. For instance, you can set up additional port forwards by passing e.g. "--netopt hostfwd=:127.0.0.1:8080-:80". It can be used multiple times.

--skip=task

Skip a particular task or feature. The option may be specified multiple times or list multiple tasks to be skipped by separating them with a comma. By default, no tasks are skipped. The following tasks may be skipped.

network

Do not configure a network card. Use this if you want to configure network on your own. This should also be passed in addition to passing "-nic none" when you want to disable networking.

rngdev

Do not pass a random number generator device.

--transport=transport

When debefivm-run adds devices to qemu, it has to select a transport and it most often guesses pci. When specifying a different machine such as -machine microvm, a different transport such as device may be needed.

-s sshport, --sshport=sshport

If given, qemu is configured to pass connections to 127.0.0.1:sshport to port 22 of the virtual machine. You can connect to your virtual machine without updating your known hosts like this:

    ssh -o NoHostAuthenticationForLocalhost=yes -p $sshport [email protected]

The option is a shorthand for "--netopt hostfwd=tcp:127.0.0.1:sshport-:22".

-- qemu options

All options beyond a double dash are passed to qemu. This can be used to configure additional hardware components. One possible use of this method is passing -snapshot to avoid modifying the virtual machine image.

SEE ALSO

        debefivm-create(1) debvm-run(1) qemu(1)