Skip to main content
德胜云
  万速智能9 > 服务器知识

Unraid 篇一:Docker核显硬解 + windows虚拟机外接显示器物理输出iGPU YES!

2023-03-12 00:19:56 浏览:

Unraid 篇一:Docker核显硬解 + windows虚拟机外接显示器物理输出iGPU YES!

作者:小呀么小瓯北

简单先描述一下效果

unraid虚拟机安装有windows/Ubuntu/黑苹果等系统。

docker安装有PLEX/EMBY/JELLYFIN等需要核显硬解的流媒体服务器

我想同时使用docker硬解输出,又能让我的虚拟机的系统能直接物理输出显示在我的屏幕上,并且这个系统还同样能让iGPU参与解码播放4k视频,这个系统在我想用的时候,我就让他开着,不想用省点电或者其他情况,又能随时关机互不影响。

序:

前年unraid大火以后,开始对家庭网络开始大整改搬家,同时也重新铺设了基础家庭千兆网络系统

那时候拔了外网好多文章,写了一篇关于如何实现igpu核显实现外接显示器,同时能满足jellyfin硬解的文章,当时还只是停留在使用vbios的rom来实现虚拟机显卡输出到物理屏幕的,但是并不完美

不久之后, ich777大佬发布了i-GVT-G插件,简直是我等菜鸡福音...

我这篇文章之前,也有大佬写过相关利用该插件实现方法,

我在此更多的是记录下我自己更具体的实现过程和效果,献丑了 

进入正题:

需要用到的装备:

一台安装有unraid系统的主机

核显要求:

5-10代英特尔集显  或  E3-v4, E3_v5, E3_v6, E-2xxx, W-12xx, W10xxx

1-N台显示器,HDMI线

1个支持displaylink的USB HUB

这个转接器是——必须要支持displaylink,必须要支持displaylink,必须要支持displaylink .这个刚见过这名词的时候,就比较难选,其实就是他的芯片是displaylink认证支持的,官网地址,上面有参数,可以自行查找哪些品牌支持.

但是这玩意儿,出的产品都很早,而且他最大作用是在黑苹果相关的骚操作上,有些旧的型号就很难买的到.

        一开始,我搜索了国内各大电商网站,发现没有理想又便宜的,后来去某鱼找,找到比较满意的是-绿联40229,还           有wavlink的几款,但是都不太满意,要么只能支持1080P,要么价格太贵,

        翻了2天某鱼,最后很偶然的,被我捡了个大漏,买到了下面这款,150搞定,2个USB口,2个视频输出    (HDMI+VGA,两个同时插只能1080p),还有个USB读卡器附赠,简直美滋滋有没有

        建议你们想要买这个设备的人,去亚马逊或者外网找找

        找到型号以后,再回国内某鱼上捡漏看看有没有合适的

        实在没有,那最好的选择可能就是绿联40229,USB3.0,支持2K输出.某鱼上价格150左右可以买到全新的.

        尽量选择这种不用额外供电的,有些需要供电的设备其实更便宜,50-100可以拿下.但是又大又需要额外插头,个人不太喜欢.

正式开整:

0.先接上准备好的设备

我又两个显示器,一个直接接在主板上,命令行操作备用

另一个主显示器接在HUB上,然后接到USB3.0接口就行

祭上之前捡垃圾120捡到的十多寸1080P的小显示器,平时偶尔备用,操作下bios

1.主板设置

    我的主板是技嘉H370N,CPU是8600T

开启VT-d,设置aperture size选项

        主板开启VT-d,aperture Size选择1024MB,我设置2GB开启黑屏,只能到1GB最大

选择输出选项改成核显:IGFX

        IGFX是CPU集显或者主板集显 , PCIe是PCI接口的独显,我没有独显,这里选择IGFX

保存BIOS,重启进入系统

2.UNRAID设置

商店搜索"GPU",安装好这3个插件

Intel-GVT-g 是本功能核心插件,另外两个安装好后,仪表板页面可以显示GPU情况

安装完成后先不要设置插件分配核显,需要先配置好虚拟机.!

插件安装完成.修改

关闭宿主显卡相关功能

        /boot/config/go 文件中删除modprobe i915之类的显卡相关命令.

        启动U盘的Syslinux 配置里不要直通显卡,删除相关字段

        如果之前开启了显卡直通,务必在 工具-系统设备 中取消显卡直通,直通的核显一般都是带有像我这样 "UHD Graphics 630" 字样的

重启UNRAID

3.Docker设置

docker的流媒体服务器,只要添加变量"/dev/dri

",然后在设置中开启相关硬解选项即可

参考其他大佬的PLEX/EMBY/JELLYFIN硬解设置教程即可,这里不赘述

4.windows虚拟机设置

我选择的是 win10 LTSC 2021版 ,自行搜索选择喜欢的

        没有安装 Libvirt Hotplug USB 插件的,提前安装好,可以热加载USB设备

        虚拟机重点选项说明提醒:

            选择Q35机型,不要使用i440f0x

            选择OVMF,以防后续万一出现43错误,减少不必要的麻烦

            配置好 操作系统安装 ISO VirtIO 驱动程序 ISO 的路径

            显卡默认VNC即可,设务必不要选择集显为输出,

        勾选USB设备里的USB HUB,我这里显示的是  DisplayLink Mini_Dock 

        先取消勾选创建后启动虚拟机,点击创建

        打开插件页面  设置 - Intel GVT-g

                选择你希望分配的显存大小,我的内存有32G,直接选择最大号,后面选择你刚创建的win10虚拟机

完成以上配置后,启动虚拟机,打开VNC

5.安装windows驱动

        进入VNC,安装好win10,安装虚拟光驱( VirtIO 驱动程序 ISO)里的驱动,win10一般都会自动安装相关显卡声卡等驱动,不行就上驱动精灵 

        此处略过以上基础win10装机的相关操作...

如果你系统没有自动安装displaylink的驱动,可以去你相关的转接器的品牌官网找驱动

        或者直接上displaylink官网下载最新驱动. 点击前往官网地址

        安装完成后重启

6.输出物理显示器

       前面安装完所有驱动重启以后,接下来是最终要的一步,输出到物理显示器.

桌面空白处 右键 - 显示设置 

显示1 是我的VNC, 显示2 是虚拟出的igpu, 显示3 就是插上去的USB HUB

VNC可要可不要,可以在虚拟机设置中,用XML模式删除相关代码,这里不赘述

            我这里先保留VNC,所以不动 显示1 , 只需要选择 复制2和3的桌面 ,并且勾选 设为主显示器

点击 确定 - 按TAB建 - 回车键

    完成 ! 

下面说下个人日常的小操作,感觉挺方便的

日常不开启虚拟机的时候,小显示器会显示宿主unraid的命令行界面(可以去淘一个键盘和鼠标合一功能的飞鼠,以防备用)

登录root账户以后,在命令行输入

virsh start XXXX    - XXXX是你的虚拟机名称

就可以直接启动相关虚拟机,等待片刻,就能显示出来了(记得开启windows免密登录更方便),看看效果

大显示器直接物理输出win10虚拟机界面,小显示器依然可以显示命令行,相互分离

日常使用windows的时候,就和普通物理机一样正常使用

测试下效果如何

        打开油管,测试一个4k视频看看解码情况

可以看到GPU正常跳动,设备管理器显卡都能正常认出,CPU负载正常,油管10w播放4k

日常可以办公,看股票,刷视频,接上我的BOSE可蓝牙,可AUX连接,当个播放器也行,美滋滋 

感谢观看,

如果对你有用,或者有其他更好的方案,欢迎一起探讨! 

参考:

https://forums.unraid.net/topic/108650-plugin-intel-gvt-g/

Unraid 篇一:Docker核显硬解 + windows虚拟机外接显示器物理输出iGPU YES!

  • 学到了吗「美国CN2云服务器哪家比较好?」美国vps云主机租
  • 不看后悔「Windows系统的大带宽服务器需要哪些安全措施?
  • 难以置信「漫谈VMware虚拟化之六:桌面虚拟化(1)——安
  • 学到了「如何构建一个稳定的服务器集群?」服务器群集搭建教程如
  • 没想到「买服务器买阿里云还是腾讯云?我更推荐阿里云」阿里云服