侧边栏壁纸
博主头像
Rd博主等级

  • 累计撰写 5 篇文章
  • 累计创建 6 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

QRSK(10500ES/不显)在PVE下开启GVT-G并直通给群晖人脸识别及emby硬解等

Rd
Rd
2024-06-03 / 0 评论 / 1 点赞 / 18 阅读 / 7636 字 / 正在检测是否收录...

QRSK(I5-10500ES/不显)在PVE下开启GVT-G并直通给群晖人脸识别及emby硬解等

前言:埋坑

一、PVE的准备工作(以下均为博主自己实际情况,若能明白都是什么作用可自行按需调整)

1.开启iommu和GVT-g支持

编辑/etc/default/grub

将GRUB_CMDLINE_LINUX_DEFAULT="quiet"这一行修改成
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt i915.enable_gvt=1"

修改完成后运行

update-grub

2.加载直通内核模块

编辑/etc/modules

添加以下内容

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
kvmgt

修完完成后运行

update-initramfs -u

3.重启PVE验证GVT-G模型是否开启

终端输入以下命令查看是否出i915-GVTg_V5等模型,若没出现请检查BIOS是否开启虚拟化以及上述1、2步操作,若出现GVTG模型只有一个,可能是BIOS DVMT等值过小。详情可点击本文字参考其它博主介绍及操作

ls /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types/   #换成自己的核显设备pcieID即为0000:00:02.0

二、Q35模型+DSM7.2直通GVT-G,Synology Photos人脸识别及硬解等

1、在PVE终端下操作

确保先复原任何过往在群晖做过的GVT-G或显卡直通等操作,在进行以下操作

依次输入以下内容,每行内容此处不做解释感兴趣可自行去了解一下

mkdir /var/lib/vz/snippets/
cp /usr/share/pve-docs/examples/guest-example-hookscript.pl /var/lib/vz/snippets/Dsm_i915-GVTg_V5_2.pl

随后编辑/var/lib/vz/snippets/Dsm_i915-GVTg_V5_2.pl

然后在 pre-start部分,增加以下代码(此处核显设备ID和gvt模型请根据自己实际情况调整)

system("echo 9a5b4b67-bed5-4768-8af0-03ee9c227571 > /sys/devices/pci0000:00/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_2/create");

post-stop部分,增加以下代码(此处核显设备ID和根据自己实际情况调整)

system("echo 1 > /sys/devices/pci0000:00/0000:00:02.0/9a5b4b67-bed5-4768-8af0-03ee9c227571/remove");

最终两处如下所示

pre-start处

if ($phase eq 'pre-start') {

    # First phase 'pre-start' will be executed before the guest
    # is started. Exiting with a code != 0 will abort the start

    print "$vmid is starting, doing preparations.\n";
    system("echo 9a5b4b67-bed5-4768-8af0-03ee9c227571 > /sys/devices/pci0000:00/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_2/create");
    # print "preparations failed, aborting."
    # exit(1);

post-stop处

} elsif ($phase eq 'post-stop') {

    # Last phase 'post-stop' will be executed after the guest stopped.
    # This should even be executed in case the guest crashes or stopped
    # unexpectedly.

    print "$vmid stopped. Doing cleanup.\n";
        system("echo 1 > /sys/devices/pci0000:00/0000:00:02.0/9a5b4b67-bed5-4768-8af0-03ee9c227571/remove");

编辑群晖虚拟机配置文件vi /etc/pve/qemu-server/103.conf(此处103是博主自己的群晖虚拟机编号自行调整)

在最开始处添加以下内容,其余的请不要做任何修改(此处pciID显卡模型脚本名字请自行对应自己刚所设置的)

args: -device vfio-pci,addr=0x02,sysfsdev=/sys/devices/pci0000:00/0000:00:02.0/9a5b4b67-bed5-4768-8af0-03ee9c227571
hookscript: local:snippets/Dsm_i915-GVTg_V5_2.pl

2、在群晖下操作

进入群晖web界面,进入控制面板-终端机和SNMP-勾选启用SSH-保存(所有步骤完成后可以回来关闭此选项)

进入控制面板-共享文件夹新建“nas-tmp”共享文件夹。完成后打开File Station找到刚才新建的“nas-tmp”右键属性查看位置并记下来。(例如博主这里是/volume1/nas-tmp)

随后打开群晖SSH终端

输入以下内容

使用管理员登陆
sudo -i
cp /usr/lib/modules/i915.ko /usr/lib/modules/i915.ko.bak #备份一下原来的,若后期复原自行复原
cp /usr/lib/modules/i915.ko /volume1/nas-tmp

随后前往web面板中File Station,打开nas-tmp文件夹回看到一个i915.ko文件下载到windows电脑本地

使用SynologyVGPUTools工具修改刚才下载的文件i915.ko文件,博主这里的核显设备型号是9BC8(QRSK)完成后前往windows电脑的C盘找到I915.ko覆盖上传到刚才的“nas-tmp”文件夹

然后回到刚才的SSH终端接着输入以下内容

cp  /volume1/nas-tmp/i915.ko /usr/lib/modules/
chmod 644 /usr/lib/modules/i915.ko

完成上述操作后重启群晖自行检查人脸识别及硬解等

三、其他事项及参考文章等

参考链接及部分文件来源

Proxmox VE 虚拟群晖 gvt-g人脸识别解决方案 | VAY冬冬 笔记 (vay1314.top)

DS918+和DS920+群晖系统快速制作核显补丁的教程 - GXNAS博客

绕开BIOS限制修改显存使GVT-g实现更多vGPU_aperture size-CSDN博客

若其他一些细节未提及或其他问题可留言

1

评论区