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

grub处理

nano

1
2
#GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"

有可能还需要

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

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

1
update-grub

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

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

开启vfio模块

nano /etc/modules

1
2
3
4
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

创建黑名单

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

1
2
3
blacklist i915
blacklist snd_hda_intel
blacklist snd_hda_codec_hdmi

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

1
2
3
4
5
6
7
# block AMD driver
blacklist radeon
blacklist amdgpu
# block NVIDIA driver
blacklist nouveau
blacklist nvidia
blacklist nvidiafb

避免 无限重启

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

允许不安全的中断

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

查看要屏蔽的设备的id,

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

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

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

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

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

更新initramfs

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

再重启

检查

1
2
3
4
5
6
7
8
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/

Licensed under CC BY-NC-SA 4.0
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计