纵观整个论坛,尤其是简体中文板块,几乎没有类似的解决方案,即便有也是比较旧的了。
本文基于 UNRAID 6.10.0-rc2 版本演示,实际上 6.9.2 也是可以的,不过只有在 6.10.0-rc2 中才有对 Windows 11 的完整支持,如果需要安装 Windows 11 建议也升级至 6.10.0-rc2。
大前提:BIOS中打开了Intel vt-x和vt-d(AMD端应该叫AMD-V和IOMMU),并且设置 IGD 为第一显示设备(也就是 BIOS 之类的默认从核显输出),且需要至少一个显示器连接到主板上的视频输出端口(也可以是欺骗器,总之需要系统识别到)。
1. 直通核显
实际上直通核显和独显并不严格要求顺序,如果对独显的直通没有信心,也可以先做直通独显。直通核显应该算是最难的了,建议先整(整不好可以直接劝退了哈哈哈)
(1) 进入MAIN→Flash→Syslinux configuration→Unraid OS
(中文版是主界面→Flash→Syslinux 配置→Unraid OS,看到右边绿色的那个框就对了)
内容替换为:
kernel /bzimage video=efifb:off vfio-pci.ids=8086:3185,8086:3198 disable_vga=1 modprobe.blacklist=i915,snd_hda_intel,snd_sof_pci,mei_me,snd_hda_codec_hdmi,snd_hda_codec_realtek
append initrd=/bzroot
其中,vfio-pci.ids=8086:3185,8086:3198 这一段,不同的CPU和主板都有所差异,以我的为例是:
有些CPU第二个设备是音频输出,其实都随意吧。这里试错成本也比较低,搞错了大不了再来一次(
至于如何查看,可以先看第三点的地方。
(2) 进入 SETTINGS→VM Manager→ADVANCED VIEW
(中文版:设置→虚拟机管理器,然后点一下右边的高级视图)
设置如下属性:
PCIe ACS override: Downstream
VFIO allow unsafe interrupts: Yes
中文版如图所示:
(3) 前往TOOLS→System Devices
(中文版:工具→系统设备)
把刚刚填的vfio-pci.ids对应的设备勾上即可。
(4) 重启主机,新建虚拟机,配置要求如下:
Windows 最好使用 i440fx,Linux 最好使用Q35,都选最新版本。
其中,VNC 必须先行保留,因为显卡可能还驱动不起来,需要用 VNC 装系统。等装完系统,驱动程序也会自动安装,到时候可以将第一显卡设为核显,不需要保留 VNC。图形 ROM BIOS 需要从这里下载:https://github.com/my33love/gk41-pve-ovmf,并且放在自己知道的地方,把路径填到该选项中。如果不指定图像 ROM BIOS,大概率是无法正常输出视频的。貌似 Intel 核显都可以用这个,所以不需要查型号了,如果有不可用的情况请回复到帖子中。
其他的设置根据自己的喜好或者用默认设置即可。
(5) 启动虚拟机,安装系统,最后等 Windows 自动安装驱动即可。如果使用 Windows 8.1 及以下操作系统,大概率是需要自己手动下载驱动程序的(而且不一定有兼容低版本操作系统的驱动程序),所以还是建议直接 Windows 10 或 Windows 11。
核显部分就到这里,接下来是较为容易的独显部分。
2. 直通独显
这一部分没有太多讲究,也可以完全不按我的步骤来做,不过为了确保尽可能一次成功还是按步骤来做。
(1) 前往TOOLS→System Devices
(中文版:工具→系统设备)
将显卡对应的框勾上,例如:
可能会有很多子设备,但是没关系,一般来说不需要配置它们,让它们自动勾上就行了。(如果需要声音输出可以在声卡一项选择)
(2) 创建虚拟机,配置随意,但是 BIOS 最好选 OVMF/OVMF TPM。
显卡选择跟核显的差不多,不过图形 ROM BIOS 一般来说可以留空,但是部分显卡可能无法正常启动或者驱动报43错误,这种情况下就需要整 vbios 了。由于感觉比较麻烦(需要一个打好驱动的物理机系统,用GPU-Z导出vbios,也许还需要小小修改一下),我这里就放弃了一些显卡。不过至少我的 GTX 1660 SUPER 还是可以正常驱动的,就不需要指定了。(GT 740 无法驱动,懒得整了)
(3) 启动虚拟机,安装系统,安装独显驱动,然后看看设备管理器的显卡设备有没有叹号,没有的话就大功告成!
(如果有的话,慢慢折腾吧,我也帮不了你)(尤其是万恶的43错误)
那么核显和独显直通的分享就这么多了,希望能够帮到初入 UNRAID 的大家。我大概花了3天来解决这些问题,期间还更换过方案,最终还是定下核显+独显的方案(主要还是考虑到 PCIe 以后的分配问题),虽然在论坛里问了但是并没有人理我(哭哭),最后也是按着外面的教程一步步试错,最终总结出这样的步骤。当然也会有按我的步骤不行的人,我希望能够多多探讨,而不是直接丢下一个“没用”就拍拍屁股走人了,如果你真心想说这话的话,我建议你还是直接关掉这个帖子吧,此贴不适合这类言论。
参考:
https://www.right.com.cn/forum/thread-6006395-1-1.html
https://github.com/my33love/gk41-pve-ovmf
https://post.smzdm.com/p/ag8l254m/