![BIOS 및 PCI 패스스루를 갖춘 Linux KVM uefi](https://linux55.com/image/102381/BIOS%20%EB%B0%8F%20PCI%20%ED%8C%A8%EC%8A%A4%EC%8A%A4%EB%A3%A8%EB%A5%BC%20%EA%B0%96%EC%B6%98%20Linux%20KVM%20uefi.png)
Linux kvm 시스템을 설정하려고 합니다. 몇 가지 이상한 문제가 발생했습니다. 약간의 배경. 호스트는 uefi h170 보드입니다. 즉, kvm을 사용하기 전에 호스트 OS를 설치하는 데 사용해야 했기 때문에 MSI Radeon R7 240이 uefi를 지원하는 것으로 알고 있습니다.
seabios를 사용하면 pci passthrough가 제대로 작동합니다. 실제로 라데온 카드에 마우스, 키보드, 모니터를 사용하여 전체 Windows 설치를 수행했습니다.
그런데 영상으로 같은 머신을 만들어서 virt-manager
영상을 전달하면 작동이 안되네요.
virt-manager
uefi 또는 cli를 통해 uefi를 사용하는 경우 비디오 패스스루가 작동하지 않습니다.
내 작업 문자열은 다음과 같습니다. (비록 두 개의 네트워크 카드를 사용하게 되었지만!?)
qemu-system-x86_64 -enable-kvm -M q35 -m 3072 -cpu host \
-smp 2,sockets=1,cores=2,threads=1 \
-bios /usr/share/qemu/bios.bin -vga none \
-device virtio-scsi-pci,id=scsi \
-drive file=/srv/wip.img,format=raw,id=disk,if=none,cache=directsync,aio=native \
-device scsi-hd,drive=disk \
-cdrom /home/driz/win10.iso \
-device ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1 \
-device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on \
-device virtio-net-pci,mac=52:54:00:ea:c8:8d \
-usb -usbdevice host:040b:2000 -usbdevice host:046d:c01e -usbdevice host:0d8c:0014 \
-boot menu=on
작동하지 않는 테스트 문자열입니다.
qemu-system-x86_64 -enable-kvm -M q35 -m 3072 -cpu host \
-smp 2,sockets=1,cores=2,threads=1 \
-mem-path /dev/hugepages \
-mem-prealloc \
-drive file=/srv/ovmf-x64/OVMF_CODE-pure-efi.fd,if=pflash,format=raw,unit=0,readonly=on \
-drive file=/srv/ovmf-x64/OVMF_VARS-pure-efi.fd,if=pflash,format=raw,unit=1 \
-device i82801b11-bridge,id=pci.1,bus=pcie.0,addr=0x1e \
-device pci-bridge,chassis_nr=2,id=pci.2,bus=pci.1,addr=0x0 \
-device virtio-scsi-pci,id=scsi0,bus=pci.2,addr=0x2 \
-drive file=/srv/wip2.img,format=raw,if=none,id=drive-scsi0-0-0-0 \
-device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0 \
-cdrom /srv/win10.iso \
-device virtio-net-pci,mac=52:54:00:ea:c8:8d \
-device vfio-pci,host=01:00.0,multifunction=on \
-nographic \
-usb -usbdevice host:040b:2000 -usbdevice host:046d:c01e -usbdevice host:0d8c:0014 \
-device virtio-balloon-pci,id=balloon0,bus=pci.2,addr=0x4 \
-boot menu=on
저는 지금 약 4일 동안 이 작업을 하고 있으며 할 수 있는 모든 것을 조사했는데 제 아이들이 마침내 지연으로 인해 화를 내고 있습니다. 도움을 주시면 감사하겠습니다!
답변1
CLI 버전에서 비디오 ROM 수정 문제를 수동으로 지정합니다. virsh에서는 아래와 같이 ROM(적절한 버전 포함)을 정의할 수 있습니다.
<hostdev>
...
<rom file='/etc/fake/boot.bin'/>
...
</hostdev>
명령줄에서
romfile=/path/to/your/rom/romfile.rom
PCI 패스스루 장치 끝에 추가