Unraid助力虚拟群晖硬解和人脸识别
前情提要:
1、上一篇文章介绍了在unraid的底层系统中开启intel的核显虚拟化技术GVT-G,并提供核显功能给win10的虚拟机使用,在这几个月的使用过程中,使用体验确实不错,也没有出现啥BUG。其中也提到了,intel的核显虽然性能不强,但是在硬解等某些功能上表现还不错,恰好最近升级了群晖7.0.1 ,于是尝试一下虚拟化核显提供给虚拟群晖使用。上一篇文章如下,感兴趣的同学也可以看看。
2、根据unraid的GVT-G插件使用说明,插件的核显虚拟化只支持5代-10代的intel 带核显的CPU,不符合条件的可以跳过了。(服务器级带核显的CPU自行测试)
原文地址:https://forums.unraid.net/topic/108650-plugin-intel-gvt-g ,为表尊重,请小编不要随意删除
3、群晖7.0的引导发布已经有一段时间了,感谢redpill大佬对引导的完善,新版引导几乎不用修改配置,新系统UI更加精美,virtio网卡驱动的支持也让虚拟群晖的网络效率更高,在试用半个月之后没出现什么bug,新版照片管理photos也比6.xx的moment和photo更容易上手,这也是我推荐升级到群晖7.0的理由之一。
项目地址如下,有兴趣的可以去看看自行编译,或者直接用别人已经编译好的引导,为表尊重,请小编不要随意删除
https://github.com/RedPill-TTG/redpill-load https://github.com/RedPill-TTG/redpill-lkm
unraid虚拟群晖系统的安装
1、上传引导,如果需要使用核显,请使用918的引导,3615xs的机型是不包含显卡驱动的。
2、新增虚拟机,配置如下
Machine:Q35
BIOS:seabios (我使用的是seabios,理论上uefi也没问题,自行测试吧)
Primary vDisk Location:选择上传的引导文件,
Primary vDisk Bus: sata
新建数据盘:(要新建一个虚拟硬盘,或者裸设备读写或者sata卡直通都随你便,如果只是尝鲜建议先新建个虚拟硬盘试试即可)
2nd vDisk Location:数据盘的位置
2nd vDisk Bus:sata
3、新建完成直接启动,新版引导不用过多修改配置,应该可以直接进入,熟悉的安装界面大家都会,我就不赘述了。
GVT-G的配置和Video Station的硬解测试
1、关闭虚拟机 =》 plugins 页面 =》 Intel GVT-g 插件 =》 分配一个vGPU 给虚拟群晖
2、重新启动,开启ssh,ssh登录并检查核显是否可以正常识别
命令:sudo ls -l /dev/dri/*
crw------- 1 root root 226, 0 Oct 25 01:55 /dev/dri/card0
crw-rw---- 1 root videodriver 226, 128 Oct 25 01:55 /dev/dri/renderD128
如果可以查看到这两个文件,即显卡驱动已经正常识别,video station 打开一个视频文件,切换播放质量可以正常播放,unraid宿主机的GPU也监控到负载,到这里已经可以正常使用video station对影音文件进行硬件解码了。
photos应用中人脸识别的完善
背景:
默认在安装群晖7.0 之后,很多人反馈918机型photos的人脸识别功能无法正常使用,但也有部分物理安装的用户表示毫无问题,根据大佬的提醒,人脸识别和核显在系统中的位置有关,只有调整让核显处在 PCI 总线 0-设备 2-功能 0 的位置,人脸识别才可以正常使用。而部分用户使用物理机安装群晖却无法启用人脸识别,除了核显驱动的问题,大概率和主板的设计有关系。
操作:
1、知道原理之后就很简单了,先关闭虚拟机(虚拟群晖7.01还无法在宿主机中直接关闭,请在群晖中手动关闭)
2、编辑群晖虚拟机的xml文件
先把xml部分中总线0-设备2的部分删除,避免设备位置冲突
<controller type='pci' index='1' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='1' port='0x10'/>
<alias name='pci.1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
</controller>
<controller type='pci' index='2' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='2' port='0x11'/>
<alias name='pci.2'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
</controller>
<controller type='pci' index='3' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='3' port='0x12'/>
<alias name='pci.3'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
</controller>
<controller type='pci' index='4' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='4' port='0x13'/>
<alias name='pci.4'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
</controller>
3、将虚拟化的核显设备位置调整到正确的位置(很重要,请小编不要随意删改)
<hostdev mode='subsystem' type='mdev' managed='no' model='vfio-pci' display='off'>
<source>
<address uuid='XXXXXXXXXXXXXXXXXXXXXXXX[系统自动生成不用管]'/>
</source>
<alias name='hostdev0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>[修改这一行即可]
</hostdev>
4、重启启动虚拟群晖系统,进入photos应用,开启人脸识别,一会即可看到人脸识别的功能已经正常启用
到此为止,虚拟群晖的使用几乎接近完美了,感兴趣的朋友可以尝试一下,写的不详细,但对于unraid的用户来说,提供的信息已经足够了。另外我们总说Intel的核显不够强,但现在一个小小的核显可以提供给宿主机和多个虚拟机共同使用,对于家庭用户来说还是非常nice的,想为intel正个名,Intel YES!!!





校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
如果说可以手动修改连接pcie设备的位置,那是不是也可以通过这个方法,将nvme硬盘放置在群晖规定的位置,使得黑群识别出nvme ssd来做缓存?
这样如果可行,就不用其他教程那样来来回回去改文件了?
不知道是不是可以这么理解,手头没多余的nvme可以试了。
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案