1、设备详情

  • 设备类型:畅网 N100 v2

  • 内存:16G

  • 硬盘 3 个 nvme 固态

2、安装系统

  1. 下载固件,选择适合自己的固件,下载地址:https://www.proxmox.com/en/downloads

  2. 将系统镜像写入引导 u 盘,进入安装向导,最值得注意的是地区和 IP、网口,如下图

3、优化系统

1、从菜单进入到 shell,输入优化脚本下载命令

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

在这里可以去除订阅提示,更换系统软件源,补全概况显示信息等

2、开启PVE直通功能

#若你的CPU为Intel:

sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT/c\GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream"' /etc/default/grub

#若你的CPU为AMD修改为:

sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT/c\GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt pcie_acs_override=downstream"' /etc/default/grub

增加所需模块,修改文件/etc/modules,输入如下命令:

echo -e "vfio\nvfio_iommu_type1\nvfio_pci\nvfio_virqfd" | tee -a /etc/modules

更新上述配置信息并重启PVE:

update-grub

update-initramfs -u -k all

reboot

验证是否已开启iommu:

dmesg | grep iommu

显示很多,表示正常

看看可直通设备列表:

lspci

显示下图上很多信息表示正常

3、开启核显SR-IOV(若需要)

开启SR-IOV项目地址:https://github.com/strongtz/i915-sriov-dkms

请逐条运行:

apt install build-* dkms git sysfsutils -y
apt install proxmox-headers-$(uname -r) proxmox-kernel-$(uname -r)
cd ~

clone代码库(此处需要pve连接github,可试试修改DNS,比如8.8.8.8,8.8.4.4等)

git clone https://github.com/strongtz/i915-sriov-dkms.git

也可以使用国内镜像代码库,但在使用前查看代码是否最新或可用。

git clone https://gitee.com/ifwwww/i915-sriov-dkms

安装sriov模块,请逐条运行:

cd ~/i915-sriov-dkms
dkms add .

这里因大佬版本变化,与视频不一样,特更新文字版教程如下:

这里记录出现的i915-sriov-dkms版本号,比如此时示范时如上图所示版本号为“2025.02.03”(该版本号会变,请以你的实际版本为准),将下面这行代码中的汉字替换为你的版本号再运行代码:

dkms install -m i915-sriov-dkms -v 把这里换成版本号 --force

这个运行需要一点时间,请耐心等待,如下图所示:

编辑 grub 配置文件

nano /etc/default/grub

在 quiet 后添加i915.enable_guc=3 i915.max_vfs=7的“7”表示可以添加7个虚拟核显(最多7个),添加数量越多同时使用时核显性能越弱,大家按需选择,我这里设置为3

i915.enable_guc=3 i915.max_vfs=3

键盘组合键ctrl+x再输入y 回车保存退出

更新grub和initramfs

update-grub 
update-initramfs -u

查看当前核显ID,并记录:

lspci | grep VGA

将上面记录的核显ID替换下面代码中的0000:00:02.0(有可能没有显示0000:,下面的代码中补全即可),sriov_numvfs = 3 中的 3 是需要虚拟的核显数量,需要和上面的设置的数量相同

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

重启在PVE的Shell中输入以下命令查看SR-IOV核显直通是否成功

lspci | grep VGA
0000:00:02.0 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)
0000:00:02.1 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)
0000:00:02.2 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)
0000:00:02.3 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)

若想卸载i915-sriov-dkms,操作如下:

使用dpkg卸载package

dpkg -P i915-sriov-dkms

使用pacman卸载package

pacman -R i915-sriov-dkms

使用manual卸载 dkms 模块(下面代码改为自己的版本号,这里以2025.02.03为例)

dkms remove i915-sriov-dkms/2025.02.03

重启PVE

reboot

4、注意

系统安装好后,每次增减 PCIe 设备,管理网口可能会变化、例如增减硬盘,因此需要帮定管理网口名称和 Mac 地址

创建一个/etc/systemd/network/10-persistent-net.link 文件

[Match]
MACAddress=a8:b8:e0:06:e0:db

[Link]
Name=lan0

保存之后,执行命令

/etc/init.d/udev force-reload

重启可以进行测试。