Proxmox环境下配置Intel vGPU的详细指南
1. 项目基础介绍
本项目是一个开源项目,旨在帮助用户在Proxmox虚拟化环境中配置Intel Gen 12/13集成显卡(iGPU),通过SR-IOV技术将其作为虚拟GPU(vGPU)使用,从而实现在多个虚拟机(VM)之间共享硬件GPU解码功能。该项目主要使用Bash脚本进行配置。
2. 项目使用的关键技术和框架
本项目使用的关键技术包括:
- SR-IOV(Single Root I/O Virtualization):一种允许单个I/O设备在多个虚拟机之间共享的虚拟化技术。
- DKMS(Dynamic Kernel Module Support):一种允许在运行时加载和卸载内核模块的工具。
- GRUB(GRand Unified Bootloader):Linux系统的一个多操作系统启动程序。
3. 项目安装和配置的准备工作
在开始安装和配置之前,请确保以下准备工作已经完成:
- BIOS设置:确保在BIOS中启用了VT-d(IOMMU)和SR-IOV。
- Proxmox版本:安装了Proxmox Virtual Environment(VE)版本8.1.4或更新的版本,并使用GRUB引导加载程序。
- EFI和Secure Boot:确保EFI已启用,Secure Boot已禁用。
- Linux内核版本:确保使用的Linux内核版本为6.1或更新。
安装步骤
以下是详细的安装步骤:
步骤1:更新系统和安装必备包
首先,更新系统并安装必要的包:
sudo apt update
sudo apt install pve-headers-$(uname -r) git pve-headers mokutil
步骤2:清理DKMS旧版本
删除旧版本的DKMS模块:
sudo rm -rf /var/lib/dkms/i915-sriov-dkms/*
sudo rm -rf /usr/src/i915-sriov-dkms*
sudo rm -rf ~/i915-sriov-dkms
步骤3:克隆DKMS仓库并配置
克隆DKMS仓库并调整其配置:
cd ~
git clone https://github.com/strongtz/i915-sriov-dkms.git
cd ~/i915-sriov-dkms
cp -a ~/i915-sriov-dkms/dkms.conf{,.bak}
sed -i 's/ -j$(nproc)//g' ~/i915-sriov-dkms/dkms.conf
DKMS_VER=$(grep 'PACKAGE_VERSION=' dkms.conf | awk -F '=' '{print $2}' | tr -d '"')
步骤4:安装DKMS模块
安装DKMS模块:
sudo apt install --reinstall dkms -y
sudo dkms add .
cd /usr/src/i915-sriov-dkms-*
sudo dkms status
sudo dkms install -m i915-sriov-dkms -v $DKMS_VER -k $(uname -r) --force -j 1
sudo dkms status
步骤5:备份和更新GRUB配置
备份并更新GRUB配置:
sudo cp -a /etc/default/grub{,.bak}
sudo sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT/c\GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt i915.enable_guc=3 i915.max_vfs=7"' /etc/default/grub
sudo update-grub
sudo update-initramfs -u -k all
sudo apt install sysfsutils -y
步骤6:创建vGPU
确定VGA卡的PCIe总线号,通常是00:02.0:
sudo lspci | grep VGA
编辑sysfs配置以启用vGPU:
echo "devices/pci0000:00/0000:00:02.0/sriov_numvfs = 7" > /etc/sysfs.conf
cat /etc/sysfs.conf
步骤7:重启宿主机
重启宿主机以完成vGPU设置:
sudo reboot
完成以上步骤后,你的宿主机应该已经准备好,可以设置带有SR-IOV vGPU支持的Windows 10/11虚拟机了。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



