发布于: 2024-3-23最后更新: 2024-3-23字数 00 分钟

type
status
date
slug
summary
tags
category
icon
password
最近搞SR-IOV直通,被一些小问题所困扰,花了点时间总结,记录以下,希望下次能尽量避坑; PVE安装略过,到目前为止,PVE8.0和PVE8.1会略有不同,下面会提到:

1.先去除PVE登陆窗口(6.3-8.1 有效):

💡
注:如果未生效,需清除浏览器缓存

2.更换 PVE 源:

编辑文件:/etc/apt/sources.list 将所有行前面加”#”进行注释,并在后面增加以下:
💡
注:这里以中科大源来例,若需要其它源请自行查找
源增加后执行:

3.下面正式进行直通SR-IOV操作

首先修改文件:/etc/default/grub 通过以下指令快速修改:
💡
如果不直通 SR-IOV 或者 不支持 SR-IOV,可将“i915.enable_guc=3 i915.max_vfs=7” 部分去除
然后修改模块文件:/etc/modules:
完成后更新grub:
💡
这里最好 reboot 重新启动一下,如果一切顺利,我们将进行下一步

4.设置启动DKMS,先安装依赖并设置参数:

5.获取DKMS:

💡
注:确保可以顺利下载github仓库,如果在国内可使用代理: git clone https://mirror.ghproxy.com/https://github.com/strongtz/i915-sriov-dkms.git

6.修改DKMS的conf文件:

💡
注:可通过 cat ~/i915-sriov-dkms/dkms.conf 查看是否修改正确

7.安装DKMS:

注: 最后使用 dkms status 查看是否安装成功,提示如下即表示安装成功: i915-sriov-dkms/6.5.xx-xx, 6.5.xx-xx-pve, x86_64: installed

8.设置自启动:

通过上述指令确认核显ID,一般为 00:02.0 然后执行以下指令:
💡
注:上述指令中的 7 为虚拟核显的个数,最多7个,数量越多越占用资源,建议改成 1-3 个
完成以下后 reboot 重启,之后再执行 lspci | grep VGA 查看是否已经产生多个核显分身,如果是则代表SR-IOV直通成功.

9.MOK设置:

到第8步为至大部分SR-IOV已经直通成功,但也有部分机子存在一些特殊情况导致直通不成功,首先可能是在BIOS中开启安全启动:SecureBoot,这种情况一般关闭安全启动即可,但是又不想关闭安全启动,那么可以进行以下操作:
加载 DKMS 密钥以便内核加载模块:
💡
注:执行上述后提示设置一个密码,下面会用到
然后物理重新开机,在HDMI输出显示中进行以下操作:
💡
如果上述操作失误需要重新操作,可重新执行上述的 mokutil ... 指令
操作完成后再回到第 8 步查看是否直通成功,另外提供MOK重置操作: update-secureboot-policy --enroll-key
 

10.直通成功后,增加到Windows11中:

下载windows11镜像,虚拟机设置如下: BIOS:UEFI 机型:q35 (pc-q35-8.1) 添加PCI设置 0000:00:02:x 并设置如下: 主GPU(勾选) ROM-Bar(勾选) 其它不勾选,如图:
notion image
notion image

11.修改虚拟机conf文件:

修改 /etc/pve/nodes/PVE/qemu-server/虚拟机ID.conf 文件,在第一行前面插入以下:
💡
注:这条在SR-IOV直通到windows中非常重要,如果不添加显卡可能会显示代码:43

12.在Windows11中遇到感叹号的驱动需要安装虚拟驱动,以下是下载地址:

13:在Windows11中核显驱动选择官方最新驱动,以下是官方下载地址,自行选择:

 
END
 
 
 
 
 
 
 
 
 
 
 

搭建WOW游戏服务器的思路整理
搭建WOW游戏服务器的思路整理
使用SSpanel UIM面板搭建机场教程
使用SSpanel UIM面板搭建机场教程

一个非常完善的SSpanel uim机场面板,相关设置和节点对接都非常简单