Qemu wird bei mir per scribt gestartet.
Installiert sind folgende Pakete:
$ pacman -Qs qemu
local/ovmf 1:r21243.3858b4a1ff-1
Tianocore UEFI firmware for qemu.
local/qemu 2.10.1-1
A generic and open source machine emulator and virtualizer
local/vde2 2.3.2-10
Virtual Distributed Ethernet for emulators like qemu
Es wird zuerst ein Qemuimage erzeugt. Danach eine neue Installation mit starten eines Isoimage.
Danach starten des neuen Qemuimages:
echo 'Erzeugen des qemu images'
qemu-img create -f qcow2 archuefi.img 10G
echo 'Starten mit cdrom'
cp /usr/share/ovmf/ovmf_code_x64.bin archuefi.bin
qemu-system-x86_64 -pflash archuefi.bin \
-enable-kvm -cpu host -smp 1 -m 1024 \
-hda archuefi.img -cdrom archisoimage.iso -boot d
echo $'Starten des fertigen Betriebssystems'
qemu-system-x86_64 -pflash archuefi.bin \
-enable-kvm -cpu host -smp 1 -m 2048 \
-net nic,model=i82551 -net user archuefi.img
Kurze Beschreibung:
1) Erzeugen des Qemuimages.
2) starten mit CDrom bzw dem Arch Isoimages als CDROM, die UEFI Firmware oder das was normalerweise im NVRAN drin wäre ist im Paket ovmf und wird zunächst ins aktuelle Verzeichnis kopiert (-pflash archuefi.bin). Nachdem der UEFI Bootloader installiert ist (grub, systemd-boot, efistub, refind)wird diese verändert. Achtung: Nach erfolgreicher Installation zum Schluss kein reboot sondern poweroff machen.
3)Das Gleiche wie vorher, jedoch mit dem geänderten UEFIeinstellungen starten. Damit keine erneute Kopie für archuefi.bin durchgeführt wird.
Am Problemlosesten habe ich das Ganze mit systemd-boot durchführen können.