kvm的虚拟机使用ovmf模式uefi启动
部分系统强制 efi启动,例如黑苹果。所以自己安装配置的pve 需要添加efi启动模式
plaintext
sudo pacman -S ovmf
会在 /usr/share/edk2-ovmf/x64/ 目录下多出来几个fd文件 是需要用的
先看一个基本的 win10系统的命令 源码: https://github.com/joyanhui/file.leiyanhui.com/blob/main/pve-unraid-kvm/kvm-baseNet-seaeBois.sh
plaintext
qemu-system-x86_64 -bios /usr/share/edk2-ovmf/x64/OVMF.fd \
-vnc :1
这样就可以启动了,但是这个fd文件好像是公用的,会写入启动信息所所以,最好是给每一个vm都cp一份来使用
plaintext
cp /usr/share/edk2-ovmf/x64/OVMF.fd /mnt/exfat/bois_win10.fd
创建一个虚拟磁盘
plaintext
qemu-img create -f raw -o size=16G /mnt/exfat/win10efi.img
开启一个虚拟机
plaintext
qemu-system-x86_64 -enable-kvm -machine pc-q35-7.1 -m 8192 \
-name w10 \
-bios /mnt/exfat/bois_win10.fd \
-cpu host,hv_relaxed,hv_spinlocks=0x1fff,hv_vapic,hv_time \
-smp 12,sockets=1,cores=6 \
-netdev user,id=mynet0,hostfwd=tcp::13389-:3389,hostfwd=tcp::23389-:3389 -device e1000,netdev=mynet0 \
-boot menu=on,splash-time=15000 \
-usb -device usb-tablet \
-vga vmware \
-drive index=1,media=disk,format=raw,if=virtio,file=/mnt/exfat/win10efi.img,cache=unsafe \
-drive index=2,media=cdrom,file=/mnt/hdd/iso/windows/Win10-21H2.iso \
-drive index=3,media=cdrom,file=/mnt/hdd/iso/virtio-win-0.1.225.iso \
-drive index=4,media=cdrom,file=/mnt/hdd/iso/pe/FirPE-V1.8.1.iso \
-vnc :1
正常安装即可,如果只是测试 也可以只启动 FirPE 他默认支持