admin管理员组

文章数量:1608850

默认ProxmoxVE 只能支持硬盘、CPU型号直通。其他PCI硬件 或者 核心显卡的直通,还需要开启IOMMU分组功能

操作PCI直通提示:

No IOMMU detected, please activate it.See Documentation for further information.

介绍

PCI直通允许您使用VM内的物理PCI设备(图形卡,网卡)(仅KVM虚拟化)。

如果“ PCI直通”设备,则该设备不再对主机可用。

注意:

PCI直通是Proxmox VE中的一项实验功能*

启用IOMMU

您需要通过编辑内核命令行来启用IOMMU 。

首先打开grub的bootloader内核命令行配置文件:

编辑内核命令行

您可以在以下位置修改内核命令行,具体取决于所使用的引导程序

Grub

内核命令行需要在文件/etc/default/grub中放置

GRUB_CMDLINE_LINUX_DEFAULT变量

然后 运行 update-grub将其内容附加到/boot/grub/grub.cfg中的所有linux条目中

Systemd-boot

内核命令行需要在/etc/kernel/cmdline中放置

要应用更改,请运行pve-efiboot-tool refresh

将其设置为loader/entries/proxmox-*.conf中的配置文件

首先打开grub的bootloader内核命令行配置文件:

GRUB(传统引导)

nano /etc/default/grub

或者 systemd-boot(UEFI)

nano /etc/kernel/cmdline

对于GRUB: 找到带有“ GRUB_CMDLINE_LINUX_DEFAULT”的行

对于systemd-boot(UEFI)创建用于systemd-boot的文件(格式为带有选项的单行)

Intel CPU

对于Intel CPU,添加intel_iommu=on,例如:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"

保存更改并更新grub:

update-grub

或systemd-boot(UEFI):

pve-efiboot-tool refresh

然后重新启动宿主机,从命令行运行

dmesg | grep -e DMAR -e IOMMU

如果没有输出,则说明有问题。

AMD CPU

对于AMD CPU 添加amd_iommu=on, 例如:

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on"

更改并更新grub:

update-grub

或systemd-boot(UEFI):

pve-efiboot-tool refresh

然后重新启动宿主机,从命令行运行

dmesg | grep -e DMAR -e IOMMU

如果没有输出,则说明有问题。

update-initramfs -u -k all

PT模式

Intel和AMD芯片都可以使用附加参数 iommu=pt, 该参数的添加方法与上述相同

这仅在必要时启用IOMMU转换,从而可以提高VM中未使用的PCIe设备的性能.

然后是修改/etc/modules文件

nano /etc/modules

添加如下内容

vfio

vfio_iommu_type1

vfio_pci

vfio_virqfd

本文标签: 硬件设备LinuxProxmoxVE