![具有 vga 直通功能的 qemu-kvm Windows 7 GUEST 不起作用](https://rvso.com/image/1452233/%E5%85%B7%E6%9C%89%20vga%20%E7%9B%B4%E9%80%9A%E5%8A%9F%E8%83%BD%E7%9A%84%20qemu-kvm%20Windows%207%20GUEST%20%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
好的,我有一個 qemu-kvm Win7 VM 設定。當將其設定為使用標準 vga 輸出“-vga std”時,它工作正常。 Windows 載入、顯示,沒有任何問題。如果我設定
-vga none \
-device vfio-pci,host=06:00.0,multifunction=on,x-vga=on \
-device vfio-pci,host=06:00.1 \
VM 仍然啟動,在其 qemu 監控控制台和用於執行啟動腳本的終端中都沒有出現錯誤。插入 pci_0000:06:00:0 上的 PCIE 顯示卡的顯示器會註冊一個訊號,顯示 BIOS 螢幕一秒鐘,但一旦它實際開始載入 Windows(無論是 iso 安裝碟或預先安裝的副本已經在VM 磁碟機)它只顯示空白黑畫面。
同樣,沒有錯誤,沒有視覺偽影,螢幕仍然記錄訊號(不會預設為“無訊號”並關閉),但它只是純黑色。據我所知,作業系統本身實際上並沒有啟動(我安裝了synergy 並設定為在電腦啟動時自動啟動。當不使用vga passthrough synergy 時,所需的VM 框輸入為0,則按預期啟動。當使用 vga 直通,我的滑鼠無法從主機/伺服器作業系統滾動到螢幕外,並且 Synergy 伺服器控制台從不指示客戶端正在建立/嘗試連接。
作業系統:Fedora 21 QEMU/QEMU-KVM:版本 2:2.3.0-4 來賓作業系統:Windows 7 Enterprise libvirt-kvm:版本 1.2.13.101 核心版本:4.0.4-201
啟動腳本:
#!/bin/bash
sudo qemu-system-x86_64 -enable-kvm -rtc base=localtime -m 8192 -cpu host,hv-time,kvm=off \
-smp sockets=1,cores=4,threads=1 -serial none -parallel none -nodefconfig \
-drive file=windows.img,cache=writeback,if=none,id=drive0,aio=native,cache.direct=on \
-device virtio-blk-pci,drive=drive0,ioeventfd=on,bootindex=1 -device virtio-scsi-pci,id=scsi \
-drive file=7_en_x64.iso,id=iso_install,if=none -device scsi-cd,drive=iso_install \
-cdrom virtio.iso \
-device vfio-pci,host=06:00.0,multifunction=on,x-vga=on \
-device vfio-pci,host=06:00.1 \
-boot menu=on \
-vga none
exit 0
註解掉最後兩行“-device”,並將“-vga none”更改為“-vga std”,使虛擬機器啟動並按預期運行。