追加修改(2022-05-24 22:37:39):
完美方案移步https://post.smzdm.com/detail_preview/apv7l397/
---------------------------------------------------------------------------------------------------------------------
前言
最近忙家里的网络改造,所以一直耽搁也没有时间来写个贴告诉大家具体的实现方法.因为我的前面那一贴,也只是粗略描述了一遍,本身只是出于自己成功的分享,从没想过要专门写一文来普众,因为主要嫌麻烦.
最近忙完家中一些网线重新布置,增加了ac+ap,又花了500块私人请移动拉了条光纤入户(因为我们小区据他们口述,走暗线难度高,总之就是不想弄,投诉也投诉了3年了,没办法算了,花点钱,整个小区从11年我做第一个百兆用户,到现在做第一个千兆用户,哎,说多了都是类),现在花点时间
告诉大家详细每一个步骤,并且优化了部分前一贴的多余的操作,仔细看,跟着走,来试试吧....---------------------------------------------------------------------------------------------------------------------
正文
首先编辑下go文件,cd /boot/config,修改下GPU缓存区,设置下modprobe i915,
这里可以安装个CA Config Editor,方便修改.
我的go文件如下:
#!/bin/bash
# Start the Management Utility
/usr/local/sbin/emhttp &
echo 0 > /sys/class/vtconsole/vtcon0/bind
echo 0 > /sys/class/vtconsole/vtcon1/bind
echo efi-framebuffer.0 > /sys/bus/platform/drivers/efi-framebuffer/unbind
modprobe i915
chown nobody:users /dev/dri
chmod 0777 /dev/dri/*
------------------------------------------------
我的U盘flash下面的启动项:
kernel /bzimage
append vfio-pci.ids=8086:a370,8086:a304,8086:a348,8086:a323,8086:a324,8086:15bc,8086:1521 pcie_acs_override=downstream,multifunction vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot
-----------------------------
这里跟上篇所说的屏蔽不同, 这里面屏蔽的是我主板的无线网卡,声卡,i219v网卡(1个group下要屏蔽4个),但是没有屏蔽显卡.因为我后来尝试,发现其实并不需要屏蔽,(屏蔽理论上确实是说直通能更优化利用cpu性能,但是个人实际使用起来,感觉无异,况且应该没有人真拿这样一台机器只用核显来虚拟出win10打游戏,对吧).
所以这里要不要屏蔽各位自己定夺.
我这儿不屏蔽主要有另一个原因,因为对jellyfin有需求,但是又不需要他的硬解,所以,在这里我选择不直通显卡.(直通显卡以后,jellyfin开了硬解,就不能开机启动了)
跟着我走,进入settings-vmmanager,找到PCIe ACS override选项:选择both.VFIO allow unsafe interrupts选项:选择yes,看图↓
贴一张我的win10虚拟机的设置,
注意项就是需要:
1.显卡选择自己对应的显卡,我是UHD Graphics 630
2.Graphics ROM BIOS选择上传的这个通用VBIOS------vbios_gvt_uefi.rom
里面有另外两个bios,一个是UHD605,应该可以对应j4125的集显,还有一个UHD4600,这两个都是我在外网收集的,有效性未知,有兴趣的同学自行尝试,通用的就选择vbios_gvt_uefi.rom这个文件即可.
OK,上传完成后,选择对应的vbios,下面说下一项:声卡.
声卡这里也有个坑,我个人是这样的,我的主板是技嘉
的H370N,尝试了很久直通声卡,开win10声卡能用,但是看log日志,总是报错诸如:235898Z qemu-system-x86_64: vfio: Cannot reset device 0000:00:1f.6, no available reset mechanism.这样的字样.但是实际使用是完全没问题的,这条因为意思是说声卡这条不能被重置.最后发现了原因,查看了官方文档,参考看这里:中文文档,
里面解释了有些主板是不支持的,可以用下面这条命令查看直通不支持reset的设备:
for iommu_group in $(find /sys/kernel/iommu_groups/ -maxdepth 1 -mindepth 1 -type d);do echo "IOMMU group $(basename "$iommu_group")"; for device in $(ls -1 "$iommu_group"/devices/); do if [[ -e "$iommu_group"/devices/"$device"/reset ]]; then echo -n "[RESET]"; fi; echo -n $'t';lspci -nns "$device"; done; done
如果后面是写着---[RESET]字样的,这个设备就是支持reset的,很显然,我的声卡不支持的(group11 00:1f.3)...
好了,过了声卡这个坑,基本机完事儿了,启动你的win10看看吧,记得要安装好声卡显卡的驱动文件.这个不详细叙述了,安驱动各位应该都会吧.实测我的没有reset,声卡也是正常没有爆音的,强迫症别纠结了...
然后接下来说说jellyfin
具体怎么安装设置就不多说了,各位大佬的文章都写得很详细,
我这里说一点,要想让jellyfin正常硬解支持的话,我个人实测,是只能暂时关闭掉win10虚拟机的,否则画面黑屏不输出,因为win10占用了硬解的通道.解决办法就是在需要看电影的时候把win10虚拟机关掉,,,需要的时候再开启就好了.
想要同时jellyfin开启,同时win10也运行,个人能力有限,有能力折腾的或者折腾出来的同学下面留言,让更多人知道吧...
这里说点废话,关于硬解:第一,我个人是用不到这台机器的硬解功能,自己的手机设备,投影仪都能直接硬解不需要,第二,本人不下载4k电影看,1080p足以,我仓储里也没有4k的文件能测试,你们自行测试.而且,我看很多人对于目前硬解这股热潮风气,我是不解的,真的那么多人有这个硬解需求,真的有人天天把自己端口开出去,供自己或者供家人朋友看自己家NAS里的电影吗?反正我个人就是下过来什么就直接看他源码率,没必要搞什么转码的,,,][-'
以上完,
有什么纰漏错误欢迎指正,写这些还带截图前前后后花了一两个小时,也算给之前的帖子的朋友一个交代了.
联系客服