2024.11.6更新:我的设备已更换为N5105的,上一篇文章已根据pve8更新,此文章仅测试了J4125+PVE7

本文是延续上一篇软路由All in One 教程:PVE虚拟机安装iKuai OpenWrt Docker 的,在我的J4125正常,理论上J4125通用,其他配置可参考。我的设备型号:倍控 G30 J4125 2.5G 4网口 i225v3版本

下载专用Win10镜像(带工具、驱动、运行库) 文件SHA1:3504d062a4df2b9a68802d7606a38e1d829798bf

镜像是[不忘初心Win10 19044.1806 21H1 极限精简版],原格式为esd,我加了ISO的壳,内置的工具驱动列表点此查看,经测试不支持qemu-guest-agent,感谢不忘初心大佬。

配置PVE

下载pve_source程序,在此处感谢原作者Jazz

wget -q -O /root/pve_source.tar.gz 'https://bbs.x86pi.cn/file/topic/2023-11-28/file/01ac88d7d2b840cb88c15cb5e19d4305b2.gz' && tar zxvf /root/pve_source.tar.gz && /root/./pve_source

执行后会有使用协议,按y同意,输入9再输入2进入pve系统直通配置。

程序会自动的进行相关配置,提示重启时按n先不重启,再按0退出脚本。

执行nano /etc/default/grub命令,还是GRUB_CMDLINE_LINUX_DEFAULT=这行,在最后的引号前先打一个空格,再加入video=efifb:off,vesafb:off,最终效果如图。

编辑完文件后按 "Ctrl + X" → "Y" → 回车,确认保存并退出。
执行以下命令以允许不安全中断

echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf

执行以下命令避免死机

echo "options kvm ignore_msrs=1" > /etc/modprobe.d/kvm.conf

执行以下命令向pve黑名单添加hdmi音频(少了这个Win就没声音了。)

echo "blacklist snd_hda_codec_hdmi" >> /etc/modprobe.d/pve-blacklist.conf

执行以下命令更新grub并重启。

update-grub
update-initramfs -u -k all
reboot

本次重启后能看到显示输出卡在以下画面,这是正常的。

重启完成后,执行lsmod | grep vfio检查是否配置成功,有相似显示就代表成功。

创建虚拟机

在local iso镜像处上传我提供的windows的镜像文件。
然后新建虚拟机,名称填写Win10,镜像选择刚才上传的镜像,类别选Windows,版本选择10/2016/2019,系统选项卡中机器选择默认的i400fx,scsi驱动器选择VirtIO SCSI(不带Single那个),硬盘总线/设备改为sata,勾选右下角的高级,磁盘大小自己设置,下方SSD仿真勾选上。

在cpu配置页面,核心还是选择4核,类别选host,将启用numa勾选上,内存分配4096m,网络选择virtio(半虚拟化),点击完成即可完成创建

配置虚拟机

现在就可以在硬件里添加声卡以及usb设备了,但是千万不要添加显卡。

然后就是启动虚拟机开始安装系统了,请不要选择admin版本,经过配置完成后会进入系统,此时虚拟机内没有网络。

安装驱动

将此电脑中cd驱动器中的tool文件夹移动到桌面上,执行里面的禁用自动更新驱动。然后双击virtio-win-0.1.229.iso,系统会自动挂载此镜像,记住这个盘符。

右键此电脑,点击管理,再点击设备管理器可以看到几个带黄色三角的硬件,都是右键更新驱动程序,选择浏览我的电脑查找,选中那个盘的根目录即可。

远程安装驱动

都安装之后打开cmd,输入ipconfig,查看自己的IP。

打开系统设置 → 系统 → 远程桌面,打开远程桌面。

使用电脑远程连接("Win + R" → "mstsc")此虚拟机,可正常连接就将虚拟机关机,之后打开虚拟机硬件菜单,添加显卡,默认即可。

添加完显卡后开机,重新使用远程桌面进入,进入设备管理器可以看到有个带三角的显示适配器。

将Tool目录中intel_vga_26.20.100.7262(station-drivers.com).zip文件解压。右键更新显卡驱动,选择解压后的目录,点击下一步,稍等几分钟,显卡驱动就安装成功了。

这时候可以重启一次再进入设备管理器看看显卡驱动还在不在,不报错就可以进行下一步。

扩展参数配置

关闭此虚拟机,进入虚拟机硬件页,将显示改为无,并且删除刚才添加的显卡pci设备。

执行以下命令下载博主郑羊羊提供的vbios,我的j4125测试使用正常。若你的j4125测试不可用,可自行搜索提取教程。

wget -O ~/ZYY_vbios.bin https://files.wanghongfeng.cn/shell/ZYY_vbios.bin

下载完成后执行以下命令重新打开pve_source程序,这次按9再按4

cd ~ && ./pve_source

按照以下步骤操作一遍

操作完成后,重新运行此脚本,这次选择按9再按5,复制其提供的参数将最后的文件名修改为实际的vbios路径,例如我的机器中代码如下:

-device vfio-pci,host=00:02.0,addr=0x02,x-igd-gms=1,romfile=/root/ZYY_vbios.bin

粘贴修改后的参数,程序将会自动将参数加入虚拟机配置文件,现在就可以再pve控制台点击启动测试了。

tool目录中其他工具请自行安装使用。

PS:我测试了,好像最后不加,romfile=文件路径这段也能正常显示的

最终效果:

参考的一些教程,在此处一块感谢他们。:
向北的平行世界
司波图
柠了个檬k
恩山-丶企鹅未婚夫
十佳评测
郑羊羊
vedio talk

最后修改:2024 年 11 月 21 日
如果觉得我的文章对你有用,请随意赞赏或点击右侧广告位(若看不到请关闭广告屏蔽)
END
本文作者:
文章标题:软路由All in One 教程:PVE J4125 Win10 核显直通 HDMI输出
本文地址:https://wanghongfeng.cn/pve_gpu_pass_through.html
版权说明:若无注明,本文皆王洪峰's blog原创,转载请保留文章出处。