乐享奈飞 乐享奈飞

乐享奈飞-乐享无限,共享自由。

目录
PVE 7.3 12代intel 核显UHD 730 SR-IOV直通+直出1660 TI 实操
/  

PVE 7.3 12代intel 核显UHD 730 SR-IOV直通+直出1660 TI 实操

本人环境

12100+1660TI

Win10 SR-IOV直通 核显 + 1660ti 独显

开启虚拟化
IOMMU
首先要保证BIOS中开启了VT-d VT-X或类似的虚拟化技术,否则是无法直通成功的
然后我们需要在Grub引导中开启iommu

PVirtual Environment 7.3-4

主板设置里开启了虚拟化相关的所有配置, 并且如果主板上有SR-IOV相关设置, 也配置为enable

可选步骤 : pve的apt源换成了国内的中科大或者清华, 能够正常安装软件

pve执行 : apt search pve-headers-5.19.7-2能看到对应版本软件

/etc/apt/sources

最新 7.x 源如下

deb http://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb http://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb http://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib

deb-src http://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb-src http://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb-src http://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib

deb http://mirrors.aliyun.com/debian-security/ bullseye-security main non-free contrib
deb-src http://mirrors.aliyun.com/debian-security/ bullseye-security main non-free contrib

#ProxmoveVE7
deb http://mirrors.ustc.edu.cn/proxmox/debian/pve bullseye pve-no-subscription
nano /etc/default/grub

修改grub

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt i915.enable_guc=7"

更新升级内核

update-grub

升级内核

apt update && apt install pve-headers-5.19.7-2-pve && apt install pve-kernel-5.19.7-2-pve -y

update-initramfs -u -k all

reboot

查看当先内核信息是否出现5.19.7-2-pve

uname -r

安装DKMS
apt install dkms -y

下载dkms模块i915-sriov-dkms.tar到pve服务器

wegt https://pan.98hg.top/d/pve/%E7%9B%B4%E9%80%9A%E7%9B%B8%E5%85%B3/i915-sriov-dkms.tar

注意每一个i915-sriov-dkms.tar文件都严格对应了linux内核, 不能在网上随便找一个同名文件覆盖.

解压文件 && 移动文件到/usr/src

tar -xvf i915-sriov-dkms.tar && mv i915-sriov-dkms /usr/src && cd /usr/src/i915-sriov-dkms

dkms install -m i915-sriov -v dkms

查看dkms状态

dkms status

显示i915-sriov, dkms, 5.19.7-2-pve, x86_64: installed则正常

安装sysfsutils

apt install sysfsutils -y

检查pci地址

lspci | grep "VGA"

检查vga的pci是不是下方命令的00.02.0

echo "devices/pci0000:00/0000:00:02.0/sriov_numvfs = 7" > /etc/sysfs.conf

检查iGPU框架是否存在
ls /lib/firmware/i915/tgl_guc_70.1.1.bin

一般会有东西显示

手动添加tgl_guc_70.1.1.bin

wget -P /lib/firmware/i915 https://pan.98hg.top/d/pve/%E7%9B%B4%E9%80%9A%E7%9B%B8%E5%85%B3/tgl_guc_70.1.1.bin

mv ./tgl_guc_70.1.1.bin /lib/firmware/i915/

reboot

lspci

检查是不是多出了几组vga, 如果是, 则说明已经成功

image.png

image.png
image.png

image.png

image.png

加载对应的内核模块
在/etc/modules中添加以下模块

vfio
vfio_pci
vfio_virqfd
vfio_iommu_type1

验证是否开启成功
重启之后,在终端输入

dmesg | grep remapping

出现如下例子。则代表成功

DMAR-IR: Enabled IRQ remapping in x2apic mode

屏蔽驱动
编辑/etc/modprobe.d/pve-blacklist.conf添加驱动屏蔽列表

Nvidia

blacklist nvidiafb
blacklist nouveau
blacklist nvidia

根据你的显卡类型来对应添加对应的驱动屏蔽
如果你是NVIDIA的显卡,还需要执行

echo "options kvm ignore_msrs=1 report_ignored_msrs=0" > /etc/modprobe.d/kvm.conf
BashCopy全屏
现在开始查看你需要直通的显卡

lspci -knn | grep -i -A 2 vga

其中65:00是代表组名。65:00.0是代表65:00组的第一个设备
1043:865f表示厂商ID:设备ID,直接通过lspci看的话可以看到音频设备甚至是USB设备
这里我因为不需要对当前PCI-E设备组再拆分,所以直接略过

如果你需要设置显卡显示设备和音频设备单独直通,需要执行下面语句
让PCI-E设备(显卡)由vfio驱动程序接管便于直通
如果不需要单独直通,vfio驱动会在设置直通的时候自动接管PCI-E设备,可以不用配置vfio-pci

echo "options vfio-pci ids=10de:1381,10de:0fbc" > /etc/modprobe.d/vfio.conf
#注意,上面这条命令,ids=后面跟直通组的所有设备。中间以英文逗号隔开。自己的设备自己替换。

然后执行下面命令更新引导配置

update-initramfs -u -k all

重启验证PCI-E显卡是否被vfio-pci驱动,Kernel driver in use: vfio-pci表示直通驱动成功

lspci -knn | grep -i -A 2 vga

......
Kernel driver in use: vfio-pci

添加设备

虚拟机设置


在对应需要直通的虚拟机中添加PCI设备,使用如上图所示设置
勾选所有功能后同一IOMMU分组下所有PCIE设备都会进入直通


标题:PVE 7.3 12代intel 核显UHD 730 SR-IOV直通+直出1660 TI 实操
作者:Dragon
地址:https://so.98hg.top/articles/2023/03/25/1679682420139.html