pve 7.3开启核显/独显直通pic设备直通简易教程

pve

#grub处理

nano

plaintext
#GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"

有可能还需要

plaintext
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on video=efifb:off"

intel_iommu=on 是开启分组
video=efifb:off 是关闭pve的显示
vesafb:off 禁用legacy启动的显示设备 非必须
更新grub后重启

plaintext
update-grub

ventoy的pve 还需要处理一下 再重启

plaintext
cd /root/vtoyboot**/ && sh vtoyboot.sh

#开启vfio模块

nano /etc/modules

plaintext
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

#创建黑名单

nano /etc/modprobe.d/pve-blacklist.conf 屏蔽常见设备和核显等

plaintext
blacklist i915
blacklist snd_hda_intel
blacklist snd_hda_codec_hdmi

其他的显卡 自己按需要屏蔽

plaintext
# block AMD driver
blacklist radeon
blacklist amdgpu
# block NVIDIA driver
blacklist nouveau
blacklist nvidia
blacklist nvidiafb

#避免 无限重启

plaintext
echo "options kvm ignore_msrs=1" > /etc/modprobe.d/kvm.conf

#允许不安全的中断

plaintext
echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf

#查看要屏蔽的设备的id,

plaintext
lspci -nn  | grep UHD
---------
00:02.0 VGA compatible controller [0300]: Intel Corporation CoffeeLake-H GT2 [UHD Graphics 630] [8086:3e9b]

记住前面和最后的地址 00:028086:3e9b

plaintext
echo "options vfio-pci ids=8086:3e9b" > /etc/modprobe.d/vfio.conf

ps:执行此操作后可能无法输出到外接显示器,若出现此情况,请撤回该步骤.另外有一个 参数 disable_vga=1 也可能会影响

plaintext
echo "options vfio-pci ids=8086:3e9b disable_vga=1" > /etc/modprobe.d/vfio.conf

#更新initramfs

plaintext
update-initramfs -u
# ventoy启动的pve.vhd 还需要处理一下vtoyboot
cd /root/vtoyboot**/ && sh vtoyboot.sh

再重启

#检查

plaintext
root@pve ~# lsmod | grep vfio
------------------------------------------
vfio_pci               16384  0
vfio_pci_core          73728  1 vfio_pci
vfio_virqfd            16384  1 vfio_pci_core
irqbypass              16384  16 vfio_pci_core,kvm
vfio_iommu_type1       40960  0
vfio                   45056  2 vfio_pci_core,vfio_iommu_type1

完毕
其他问题 参考以前的记录 :https://dev.leiyanhui.com/pve/win-gpu/

评论