Kvm
如何在 qemu-system 參數和 virt-install 參數之間進行轉換,以便統一部分工作的命令?
我正在使用 KVM 設置 VFIO。我讓 VFIO 本身工作,因為當我啟動 VM 時,VFIO 的 GPU 會顯示 UEFI shell 螢幕。我還能夠使用 VNC 為圖形創建工作 Windows VM。我的問題是我使用 qemu-system 創建了帶有直通的 VM,而我使用 virt-install 創建了完全啟動的 VM。
我想做的是使用virt-install,但使用與qemu-create傳遞相同的PCI設備,所以我需要弄清楚如何將qemu-system參數轉換為virt-install選項(或virsh編輯xml )
-device vfio-pci,host=42:00.0,multifunction=on \ -device vfio-pci,host=42:00.1 \
進入 virt-install 參數。但是,我用於 virt-install的指令不使用 PCI ID,而是使用域、匯流排和插槽,這些在 lspci 中沒有顯示,我不知道如何檢查。因此,要麼我需要獲取該資訊並在 virt-install 命令中使用它,要麼找到一種將 PCI ID 與 virt-install 一起使用的方法。
這是我的兩個命令:
qem系統:
sudo qemu-system-x86_64 \ -name $vmname,process=$vmname \ -machine type=q35,accel=kvm \ -cpu EPYC,kvm=off \ -smp 4,sockets=1,cores=2,threads=2 \ -m 16G \ -balloon none \ -rtc clock=host,base=localtime \ -vga none \ -nographic \ -serial none \ -parallel none \ -device vfio-pci,host=42:00.0,multifunction=on \ -device vfio-pci,host=42:00.1 \ -drive if=pflash,format=raw,readonly,file=/usr/share/OVMF/OVMF_CODE.fd \ -drive if=pflash,format=raw,file=/usr/share/OVMF/OVMF_VARS.fd \ -boot order=dc \ #-drive id=disk0,if=virtio,cache=none,format=raw,file=/dev/nvme-tank/ntfs-zvol-part1 \ -drive file=/media/big-tank-8TB/OSISOS/Windows/WindowsOct2018.iso,index=1,media=cdrom \ -drive file=/media/big-tank-8TB/OSISOS/Windows/virtio-win-0.1.160.iso,index=2,media=cdrom
虛擬安裝
virt-install \ --name myWINVM1 \ --ram 4096 \ --disk path=/dev/nvme-tank/ntfs-zvol-part1 \ --cpu core2duo \ --vcpus 4 \ --os-type windows \ --os-variant win10 \ --network bridge=virbr0 \ --graphics vnc \ --console pty,target_type=serial \ --disk /media/big-tank-8TB/OSISOS/Windows/WindowsOct2018.iso,device=cdrom,bus=ide \ --disk /media/big-tank-8TB/OSISOS/Windows/virtio-win-0.1.160.iso,device=cdrom,bus=ide
弄清楚如何使 qemu-system 正確啟動也可以,但我更喜歡 virt-install,因為它會生成一個方便的 XML 文件,以後可以查看。
我相信您正在尋找 virt-install 的 –hostdev 選項。它可以採用 PCI 匯流排位置和其他標誌。完整列表顯示:
virt-install --hostdev=?
以上所需的選項應如下所示:
virt-install \ --name myWINVM1 \ --ram 4096 \ --hostdev 42:00.0,address.type=pci,address.multifunction=on \ --hostdev 42:00.1,address.type=pci \ ...