[lwptoc numeration="none" title="目录"]
系列文章:
1、用1个USB外置固态硬盘作ESXi系统盘和存储盘;(这里)
2、将USB无线键鼠直通给虚拟机Win10;(这里)
3、将显卡直通给虚拟机Win10;(本文)
0、概述
最后一步就是直通显卡了。
显卡直通后,把电视接到显卡上就可以直接显示虚拟机的画面。
搭配上一步所做的直通键鼠,操作起来和物理机做HTPC没差别了。
1、硬件准备
我选了技嘉1030半高刀卡。大约400元。
只有30w功耗,可以硬解4k常见的h.265等格式。很适合做HTPC输出。
Nvidia各卡的硬解支持可以看官方列表:Video Encode and Decode GPU Support Matrix
插到Gen10 plus内位置刚刚好。把HDMI接到电视上,就完成准备工作了。
2、在Gen10 Plus中关闭内置显卡
这一步我不知道是不是所有主机都是需要的。
但对于Gen10 plus如果不做这一步,就会导致设置直通后的虚拟机无法开机。
方法是进入开机时按F9进入system utilities,系统配置——BIOS/平台配置——高级选项——视频选项,设置为“启用附加视频,禁用嵌入视频”
设置后,ESXi的开机画面应该会在电视上显示了:
3、开启显卡直通
1)参考一般的设备直通,在ESXi的管理网页中,在 管理——PCI设备,找到显卡并设置并切换直通。
完成后,重启主机。
2)主机重启后,就可以在虚拟机中添加PCI设备了。
如果是一般设备直通的话,到这里就可以了。但对于显卡,还得多做几步。
另外,所有直通设备都一样的,需要预留所有内存。
3)打开ESXi的SSH服务,并接入。
输入命令,编辑ESXi系统配置。
vi /etc/vmware/esx.conf
在文件最下面,添加一行/device/0000:07:00.0/owner = "passthru"。
其中的0000:07:00.0是PCI地址,要根据实际设备修改。可以从刚才的添加PCI设备页面看到。
4)输入命令,修改设备直通模式。
vi /etc/vmware/passthru.map
在下面添加两行:
#Nvidia
10de ld01 d3d0 false
其中,10de是厂商ID,1d01是设备ID,要根据实际情况修改。
这两个参数可以在设置PCI设备直通那里看到。
但ESXi网页有个bug,选择设备后,下面的信息会一闪而过。我的做法是一闪瞬间按截图、多试几次= =
5)设置虚拟机参数,使系统不识别为虚拟机。
这步只有n卡需要,因为老黄很奇怪地把所有n卡都设置成禁止在虚拟机中运作,原因不明……
在虚拟机的编辑——虚拟机选项——高级——编辑配置那里,追加一行:
hypervisor.cpuid.v0 = FALSE
之后打开虚拟机电源,但由于还没安装驱动,电视上还不会显示虚拟机的画面。
在ESXi的管理网页中,操作虚拟机的Win10,应该可以在设备管理器中多了一块显卡(但居然是显示Microsoft的?)。
下载Nvidia显卡对应驱动并安装,就可以正常使用显卡了。
4、最终效果
操作起来和一般物理机没有差别。
而实际上他背后还跑着NAS系统、软路由等……一物多用,非常优雅。
1030独显,硬解4K毫无压力。(好吧,到H.265 4:2:0都行。到最新的4:4:4编码的碰壁了)
还能steam串流回房间的主力PC玩缺氧。
5、疑难杂症
1)如果你的主板有自带声卡,需要现在BIOS里把声卡屏蔽。否则直通显卡后,win10里显卡会显示Code43故障;
2)我的win10虚拟机直通显卡后,电视播声音经常会出现爆音,原因不明。
通过为虚拟机预留CPU资源,和调整声卡的MSI模式好像基本解决了9成。
方法参见另外文章:解决ESXi的虚拟机Win10爆音问题
3篇写完,感谢收看~~
文章评论
直通显卡后有遇到过一段时间在虚拟机中检测不到显卡, 重启esxi后又可以, 然后过一段时间又掉显卡的问题吗?
@xlfu 唔,这个问题我没试过喔。显卡从来没掉过。
要不试试关掉win的待机黑屏功能?
A卡不用hypervisor.cpuid.v0 = FALSE那一步。
好像也不那么容易code 43错误。
是不是A卡更好直通点?