开启直通
修改路径
vim /etc/default/grub
- intel_iommu 👉 Intel处理器 硬件单元管理
- i915.enable_gvt 👉 Intel集显虚拟化
- iommu=pt 👉 开启硬件直通
# 修改GRUB_CMDLINE_LINUX_DEFAULT为
"quiet intel_iommu=on i915.enable_gvt=1 iommu=pt"
若出现显卡不可用加入
video=efifb:off
硬件拆分
- 主要场景使用于多口网卡直通到多台虚拟机
pcie_acs_override=downstream
完整配置
"quiet intel_iommu=on i915.enable_gvt=1 iommu=pt video=efifb:off pcie_acs_override=downstream"
若是amd处理器则
将intel_iommu
改为amd_iommu
更新内核
update-grub
屏蔽驱动
屏蔽显卡驱动
# AMD GPUs
echo "blacklist amdgpu" >> /etc/modprobe.d/pve-blacklist.conf
echo "blacklist radeon" >> /etc/modprobe.d/pve-blacklist.conf
# NVIDIA GPUs
echo "blacklist nouveau" >> /etc/modprobe.d/pve-blacklist.conf
echo "blacklist nvidia*" >> /etc/modprobe.d/pve-blacklist.conf
# Intel GPUs
echo "blacklist i915" >> /etc/modprobe.d/pve-blacklist.conf
- 防止虚拟机中的某些应用程序奔溃添加
echo "options kvm ignore_msrs=1" > /etc/modprobe.d/kvm.conf
- 屏蔽警告
echo "options kvm ignore_msrs=1 report_ignored_msrs=0" > /etc/modprobe.d/kvm.conf
模块
加载的模块
# 编辑modules
vim /etc/modules
# 添加以下
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
kvmgt
刷新
update-initramfs -u -k all
重启后 验证
find /sys/kernel/iommu_groups/ -type l
显示多组iommu设备即成功
查看pci设备
lspci -nn