准备工作
系统配置之前,检查下BIOS的这些功能是否正确开启
- Intel VMX虚拟化技术 (需要开启)
- VT-d (需要开启)
- SR-IOV (需要开启)
- IOMMU (需要开启)
- VMD setup menu (需要关闭)
开启 BIOS 相关选项以畅网工控机演示
1 2 3
| Advanced - CPU Configuration - Intel (VMX) Virtualization Technology - Enabled Chipset - System Agent (SA) Configuration - VT-d - Enabled Chipset - System Agent (SA) Configuration - Above 4GB MMIO BIOS assignment - Enabled
|
Intel 11 代及以上 SR-IOV 核显虚拟化
安装所需版本的内核和头文件
- i915-sriov-dkms目前支持6.8-6.13内核,根据
uname-a反馈信息调整 header 的版本信息
- 下载安装 headers
1 2 3 4 5 6 7
| apt update && apt install pve-headers-$(uname -r)
# 如果遇到报错,执行以下命令 apt install proxmox-headers-6.8 proxmox-kernel-6.8对于未签名的内核 - 后面这个-6.8与uname-a返回的内核大版本号一致
这条命令的目的是为了确保安装了与当前系统内核版本匹配的Proxmox VE内核头文件,这对于确保系统上的某些软件或工具能够正确编译和与内核交互是非常重要的
|
1
| apt install -y build-* dkms
|
1
| wget -O /root/i915-sriov-dkms_2025.02.03_amd64.deb "https://github.ixin.top/https://github.com/strongtz/i915-sriov-dkms/releases/download/2025.02.03/i915-sriov-dkms_2025.02.03_amd64.deb"
|
1
| wget -O /root/intel-i915-dkms_1.24.1.19.240119.1.nodrm+i6-1_all.deb "https://github.ixin.top/https://github.com/moetayuko/intel-gpu-i915-backports/releases/download/I915MT65-24.1.19-6/intel-i915-dkms_1.24.1.19.240119.1.nodrm+i6-1_all.deb"
|
- 下载其中一个软件包驱动即可不要两个都安装可能会出现问题
- i915-sriov-dkms和intel-gpu-i915-backports软件包驱动说明
1 2 3 4 5 6 7 8 9 10 11
| i915-sriov-dkms软件包驱动说明: * 用于 Gen 11 (如 i5-1135G7 的 Iris Xe 核显)、Gen12 (如 i7-1270p 的 Iris Xe 核显)及 Gen 13 (如 i5-13400 的 UHD 730 核显) SR-IOV * 部分 Gen 11 核显 SR-IOV 失败可尝试使用 intel-gpu-i915-backports 驱动 内核要求:适用于 PVE 6.1.0-1 ~ 6.2.9-1、 6.5.13-3-pve ~ 6.8.12-1 的内核
intel-gpu-i915-backports软件包驱动说明: * 用于 Intel 11 代及以后各代核显直接使用 PVE 硬件解码、转码 * 用于 Intel 11 代及以后各代核显 SR-IOV 后分配 VFs 给虚拟群晖并在虚拟系统中调用 VF 实现硬件转码及解码; * 用于部分 Gen 11 核显 SR-IOV 后分配 VFs 给虚拟 Windows 并在虚拟系统中调用 VF 实现硬件转码及解码; * 不能用于 Gen12,如 i7-1270p 的 Iris Xe 核显或 Gen 13,如 i5-13400 的 UHD 730 核显 SR-IOV 后分配 VFs 给虚拟 Windows 并在虚拟系统中调用 VF 实现硬件转码及解码; 内核要求:待数据反馈
|
1 2 3 4 5
| #i915-sriov-dkms软件包驱动复制以下命令安装: dpkg -i i915-sriov-dkms_2025.02.03_amd64.deb
#intel-gpu-i915-backports软件包驱动复制以下命令安装: dpkg -i intel-i915-dkms_1.24.1.19.240119.1.nodrm+i6-1_all.deb
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| # 输入以下命令检查是否成功 modinfo i915|grep vf
# 反馈如下表示成功 parm: max_vfs:Limit number of virtual functions to allocate. (0 = no VFs [default]; N = allow up to N VFs) (uint)
# 如无反馈则安装失败,输入以下命令卸载此软件包 #i915-sriov-dkms软件包驱动复制以下命令卸载: apt-get purge i915-sriov-dkms
#intel-gpu-i915-backports软件包驱动复制以下命令卸载: apt-get purge intel-i915-dkms
# 输入以下命令重新安装(直至有成功信息反馈为止) #i915-sriov-dkms软件包驱动复制一下命令重新安装: dpkg -i i915-sriov-dkms_2025.02.03_amd64.deb
#intel-gpu-i915-backports软件包驱动复制以下命令重新安装: dpkg -i intel-i915-dkms_1.24.1.19.240119.1.nodrm+i6-1_all.deb
|
1 2 3 4 5
| # 编辑 grub 配置文件 nano /etc/default/grub - 在 quiet 后添加 intel_iommu=on i915.enable_guc=3 i915.max_vfs=7 module_blacklist=xe
# ctrl+x y 回车保存退出
|
1
| update-grub && update-initramfs -u
|
1 2 3 4 5 6 7
| nano /etc/modules 修改文件/etc/modules,加入如下的行 vfio vfio_iommu_type1 vfio_pci vfio_virqfd
|
1
| update-initramfs -u -k all
|
- 安装sysfsutils(对新手友好方便对VF核显数量设置)
1 2 3
| apt install -y sysfsutils
不建议使用开机自启脚本rc.local,增加不必要的风险
|
1 2 3 4 5
| echo "devices/pci0000:00/0000:00:02.0/sriov_numvfs = 3" > /etc/sysfs.conf
命令中00:02是你GPU所在的PCIe设备ID。如果不是,请使用 lspci | grep VGA 查找您的GPU所在的PCIe设备ID 命令中sriov_numvfs = 3 代表SRIOV核显数量,可自定义设定,最多设置7个 设置为1个性能最强,如果设置为7个,那么每一个的性能只有14%(所以这里大家根据自身核显性能自行考量)
|
- 重启完之后检查是否成功
- 通过PVE节点的Shell输入以下命令查看SRIOV核显直通是否成功
1 2 3 4 5 6
| 00:02.0 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c) 00:02.1 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c) 00:02.2 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c) 00:02.3 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c) 00:02.4 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c) 00:02.5 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)
|
- 00:02.x VGA 这就是刚刚虚拟出来的核显了
⚠️注意:物理核显02.0不能直通出去(可以映射给LXC),否则物理核显本体被独占,所有虚拟核显消失。
PVE内核升级重装驱动教程
安装所需版本的内核和头文件
- i915-sriov-dkms目前支持6.8-6.13内核,根据
uname-a反馈信息调整 header 的版本信息
- 下载安装 headers
1 2 3 4 5 6 7
| apt update && apt install pve-headers-$(uname -r)
# 如果遇到报错,执行以下命令 apt install proxmox-headers-6.8 proxmox-kernel-6.8对于未签名的内核 - 后面这个-6.8与uname-a返回的内核大版本号一致
这条命令的目的是为了确保安装了与当前系统内核版本匹配的Proxmox VE内核头文件,这对于确保系统上的某些软件或工具能够正确编译和与内核交互是非常重要的
|
1 2 3 4 5 6 7 8 9 10 11
| # 查看所有已安装的软件包 dpkg -l
# 查找名为 i915-sriov-dkms 的软件包 dpkg -l | grep i915-sriov-dkms
# 查看 i915-sriov-dkms 软件包的详细信息 dpkg -s i915-sriov-dkms
# 或者使用 apt 命令查看 i915-sriov-dkms 软件包的详细信息 apt show i915-sriov-dkms
|
1
| apt-get purge i915-sriov-dkms
|
1
| dpkg -i i915-sriov-dkms_2025.02.03_amd64.deb
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| # 输入以下命令检查是否成功 modinfo i915|grep vf
# 反馈如下表示成功 parm: max_vfs:Limit number of virtual functions to allocate. (0 = no VFs [default]; N = allow up to N VFs) (uint)
# 如无反馈则安装失败,输入以下命令卸载此软件包 #i915-sriov-dkms软件包驱动复制以下命令卸载: apt-get purge i915-sriov-dkms
#intel-gpu-i915-backports软件包驱动复制以下命令卸载: apt-get purge intel-i915-dkms
# 输入以下命令重新安装(直至有成功信息反馈为止) #i915-sriov-dkms软件包驱动复制一下命令重新安装: dpkg -i i915-sriov-dkms_2025.02.03_amd64.deb
#intel-gpu-i915-backports软件包驱动复制以下命令重新安装: dpkg -i intel-i915-dkms_1.24.1.19.240119.1.nodrm+i6-1_all.deb
|
- 检查安装成功后重启
reboot
- 这样就完成了内核升级后重新安装驱动的全部流程