解决PVE下群晖GVT-G人脸识别问题

PVE机器型号 -  i440fx

解决方法:

  1. UI配置虚拟机,并记录设备ID

  1. 打开虚拟机配置:vim /etc/pve/qemu-server/虚拟机编号.conf
  2. 在中添加:-set 'device.hostpci0.addr=0x02'
  3. UI显示中设置的是“默认” 或者 “VGA”需要增加:-set 'device.vga.addr=0x10
  4. 重启:reboot
  5. 检查:ls /dev/dri 如果出现 render128就是直通成功,之后打开Photos检测是否成功

    hostpci0:这个数字为上图指向的

PVE 机器型号 - q35

解决方案(原文地址)How can I change the addr of gvt-g mdev? | Proxmox Support Forum
首先需要在UI界面关闭GVT-g的显卡直通,但是提前记录需要直通哪个GVT型号,这里选择”i915-GVTg_V5_4模型“

  1. 在PVE宿主机执行
    复制脚本文件:
    1
    cp /usr/share/pve-docs/examples/guest-example-hookscript.pl /var/lib/vz/snippets/gvt_g_0x02.pl
    编辑脚本:vim /var/lib/vz/snippets/gvt_g_0x02.pl
    在这里插入:

1
system("echo 00000000-0000-0000-0000-000000000100 > /sys/devices/pci0000:00/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_4/create");

在这里插入:

1
system("echo 1 > /sys/devices/pci0000:00/0000:00:02.0/00000000-0000-0000-0000-000000000100/remove");

编辑虚拟机配置文件:vim /etc/pve/qemu-server/100.conf 增加:

1
2
args: -device vfio-pci,addr=0x02,sysfsdev=/sys/devices/pci0000:00/0000:00:02.0/00000000-0000-0000-0000-000000000100
hookscript: local:snippets/gvt_g_0x02.pl
  1. 启动虚拟机:qm start 100
  2. 验证(方法同上)