QEMU¶
QEMU is a versatile piece of software that has lots of different use cases. Here are some common configurations to (manually…) check.
- Emulation mode:
throw-away, user-mode/non-accelerated emulation – here are some images
KVM guest (incompatible with Xen)
Xen HVM guest
- User interfaces:
virt-manager/libvirt
gnome-boxes
ProxMox is Debian-based and would be a good test case, but they ship their own modified qemu version
Xen xl CLI
- Guest systems:
GNU/Linux
Windows: trial versions of Windows Server ISOs are easily available; pre-installed VMs are also available through modern.ie, with a conversion script; 2012R2 is known to crash with Xen HVM on first boot (Jessie)
- Networking card:
basic Ethernet emulation
VirtIO networking (accelerated)
- Networking attachment:
slirp user-mode networking (NAT)
bridge
…
- Disk types:
IDE, SCSI emulation (non-accelerated)
VirtIO disk (accelerated, may require drivers ISO)
iSCSI client/initiator (you can install tgt on a separate box for a test server/target, and qemu-block-extra
- Graphic access:
SDL (direct window)
VNC (e.g. with vncviewer)
Spice (e.g. with virt-manager)
Common issues¶
Make sure you reserve enough memory (-m
). QEMU’s default is 128M
but running the Debian Installer ISO plain panics with that amount
(512M only gets you buster’s “low-memory” mode).
ASAN build¶
ASan doesn’t support static builds, so in addition to the DEB_*FLAGS_APPEND drop qemu-user/qemu-user-static from debian/control and debian/control-in before building.