He logrado hacer esto en archlinux, principalmente adaptando ejemplos que otras personas (más inteligentes) proporcionaron en blogs.
Versión mínima:
instalar departamentos
sudo pacman -S qemu # qemu itself
sudo pacman -S ovmf # intel EFI driver
cp /usr/share/ovmf/x64/OVMF_CODE.fd bios.bin # copy OVMF_CODE.fd to bios.bin somewhere. It MUST be renamed.
iniciar qemu
qemu-system-x86_64 \
-enable-kvm `# enable KVM optimiations` \
-L . `# dir with bios.bin` \
--bios bios.bin `# bios.bin itself` \
-m 8G `# provide reasonable amount of ram` \
-cpu host `# match the CPU type exactly` \
-drive file=/dev/sda,format=raw,media=disk `# load raw HDD`
Optimizaciones de rendimiento
También me recomendaron las siguientes banderas, y las he estado usando con éxito.
# emulate exact host cpu,
# enable hyper-v enlightenments
-enable-kvm
-cpu host,hv_relaxed,hv_spinlocks=0x1fff,hv_vapic,hv_time
-machine type=pc,accel=kvm
# use all available CPU cores
-smp $(nproc)
Espectador
Usé spice como espectador:
-daemonize `# don't start monitor, we connect using RDP` \
-vga qxl \
-spice port=5930,disable-ticketing \
-device virtio-serial \
-device virtserialport,chardev=spicechannel0,name=com.redhat.spice.0 \
-chardev spicevmc,id=spicechannel0,name=vdagent \
Seguido de lo siguiente para mostrar el visor
spicy -h 127.0.0.1 -p 5930 & disown spicy; # spice-gtk
Advertencia del cargador de arranque de Windows
Finalmente, tenga cuidado con el gestor de arranque de Windows si está utilizando múltiples discos. Ahora tengo una instalación de Windows que no arrancará a menos que también haya una segunda unidad que no sea del sistema operativo.
Referencias
Desearía mantener mis fuentes aquí. Recuerdo que al menos los siguientes fueron muy útiles:
https://wiki.qemu.org/Main_Page
https://qemu.weilnetz.de/doc/qemu-doc.html
https://wiki.archlinux.org/index.php/QEMU
https: //wiki.gentoo .org / wiki / QEMU
https://www.suse.com/documentation/sles11/book_kvm/data/part_2_book_book_kvm.html
¡Buena suerte!
qemu
con la arquitectura correcta. Además, Windows no se iniciará si espera que el controlador HDD sea AHCI y no lo sea (y viceversa).