开启虚拟化

intel 6-10代支持GVT-g核显虚拟化,需要提前在主板BIOS开启虚拟化功能vt-d

修改 GRUB

nano /etc/default/grub,找到GRUB_CMDLINE_LINUX_DEFAULT行,添加参数启用 Intel IOMMU(Input/Output Memory Management Unit)和 GVT-g:

1
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt i915.enable_gvt=1"

更新 GRUB 配置

1
sudo update-grub

加载内核模块

nano /etc/modules,添加以下内容:

1
2
3
4
5
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
kvmgt

如果在/etc/modprobe.d/pve-blacklist.conf中屏蔽了显卡驱动,则需要解除屏蔽

更新 initramfs :

1
sudo update-initramfs -u -k all

reboot 重启系统

检查是否成功

1
2
ls /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types
输出2个及以上则成功开启

创建win10虚拟机

注意以下硬件配置:

1
2
3
4
5
6
显示:默认
机型:pc-q35-8.1 #不要选9.0
BIOS:OVMF (UEFI)
CPU:host
网络:virtIO(半虚拟化)
添加PCI设备:核显GVT-g(勾选ROM-Bar和PCIE在Mdev类型中选择vgpu设备)

系统安装好后开启远程控制,然后关机

硬件 - 显示设置为无

再次启动win10后,pve看不到win10的图像输出。

通过远程连接下载显卡驱动安装,GPU即可正常使用