Existe uma maneira fácil de configurar a passagem VGA no Ubuntu 16.04?

1

Alguém tem sucesso em configurar a passagem VGA no Ubuntu 16.04? Qual é a maneira mais fácil de fazer isso?

Eu instalei o virtual-manager.

    
por JulianLai 07.09.2016 / 16:05

1 resposta

2

UPDATE: Eu tenho isso funcionando corretamente com libvirt agora. Para mim, a única complicação foi aprender como falsificar o driver do Windows NVidia para Acredito que não esteja sendo executado em uma VM. Fiz isso adicionando <kvm><hidden state='on'/></kvm> ao bloco <features> . e <timer name='hypervclock' present='no'/> ao bloco <clock> . (Atualização 2: o hypervclock agora parece ser aceitável para os drivers modernos da NVidia.)

RESPOSTA ORIGINAL:

Não há uma maneira "fácil", e eu tive apenas um sucesso parcial adicionando diretamente o dispositivo PCI com o libvirt / virtual-manager. Eu tive sucesso absoluto seguindo este guia.

No entanto, eu tive que ler muito em outros tutoriais e fóruns para entender o que estava acontecendo. Aqui está a lista de terminologia que eu gostaria de ter tido quando comecei .

Os passos básicos são:

  • elimine o seu dispositivo VGA de passagem para que o Ubuntu não o reivindique
  • script de uma linha de comando do qemu para ...
    • adicione uma porta raiz virtual ioh3420
    • adicione seu dispositivo VGA
    • adicione outros dispositivos no mesmo grupo IOMMU que seu dispositivo VGA
    • adiciona um mouse / teclado

Aqui está o script do link acima, todo o crédito para o autor, Matt Bach.

#!/bin/bash

configfile=/etc/virt/vfio-pci1.cfg

vfiobind() {
    dev=""
        vendor=$(cat /sys/bus/pci/devices/$dev/vendor)
        device=$(cat /sys/bus/pci/devices/$dev/device)
        if [ -e /sys/bus/pci/devices/$dev/driver ]; then
                echo $dev > /sys/bus/pci/devices/$dev/driver/unbind
        fi
        echo $vendor $device > /sys/bus/pci/drivers/vfio-pci/new_id

}

modprobe vfio-pci

cat $configfile | while read line;do
    echo $line | grep ^# >/dev/null 2>&1 && continue
        vfiobind $line
done

sudo qemu-system-x86_64 -enable-kvm -M q35 -m 4096 -cpu host,kvm=off \
-name cmdline \
-smp 4,sockets=1,cores=4,threads=1 \
-bios /usr/share/qemu/bios.bin -vga none \
-usb \
-usbdevice host:046d:c52b,hostbus=3,hostaddr=7  \ // My logitech mouse/kb receiver
-device ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1 \
-device vfio-pci,host=05:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on \
-device vfio-pci,host=05:00.1,bus=root.1,addr=00.1 \    
-drive file=/home/at/virt/windows1.img,id=disk,format=qcow2,cache=none,if=none -device ide-hd,drive=disk \
-drive file=/home/at/virt/win7.iso,id=isocd,cache=none,if=none,format=raw -device ide-cd,bus=ide.2,drive=isocd \
-boot menu=on
    
por DS Justice 17.02.2017 / 19:56