侧边栏壁纸
  • 累计撰写 3 篇文章
  • 累计创建 10 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Proxmox VE(PVE)开启硬件直通功能

96xm
2023-02-16 / 0 评论 / 5 点赞 / 463 阅读 / 0 字
温馨提示:
本文最后更新于2023-07-20,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

一、确认主板和CPU是否支持VT-d功能

要开启硬件直通之前,需要确定机器的CPU及主板是否支持VT-d技术。
1、查询CPU是否支持VT-d,请前往以下相应的官网进行查询,若支持,则可以进行硬件直通。

Intel用户请前往 官网 进行查询;

AMD用户请前往 官网 进行查询。

2、主板BIOS里的VT-d已开启,此处不过多进行介绍。

二、开启IOMMU功能

1、编辑/etc/default/grub,输入命令:

nano /etc/default/grub

在打开的文档中找到GRUB_CMDLINE_LINUX_DEFAULT="quiet"这一行,根据以下方式进行修改。
对于Intel CPU用户,将该行修改为:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction"

对于AMD CPU用户,将该行修改为:

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt pcie_acs_override=downstream,multifunction"

说明:pcie_acs_override=downstream,multifunction 用于拆分iommu,如果不拆分iommu,当两个设备及以上同时直通,其中一个就会显示占用。

修改完成后,按Ctrl+S保存,按Ctrl+X退出编辑器。

2、然后输入命令更新grub

update-grub

三、加载相应的内核模块

1、编辑/etc/modules,输入命令:

nano /etc/modules

添加以下内容:

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

修改完成后,按Ctrl+S保存,按Ctrl+X退出编辑器。

2、然后输入命令更新内核参数:

update-initramfs -k all -u

3、重启系统:

reboot

四、验证是否开启IOMMU

1、重启之后输入命令:

dmesg | grep iommu

如果出现以下类似内容,则说明开启成功。

[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.15.85-1-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
[    0.078277] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.15.85-1-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
[    0.553650] iommu: Default domain type: Passthrough (set via kernel command line)
[    0.633137] pci 0000:ff:0b.0: Adding to iommu group 0
[    0.633156] pci 0000:ff:0b.1: Adding to iommu group 0
[    0.633173] pci 0000:ff:0b.2: Adding to iommu group 0
[    0.633190] pci 0000:ff:0b.3: Adding to iommu group 0
[    0.633313] pci 0000:ff:0c.0: Adding to iommu group 1
[    0.633331] pci 0000:ff:0c.1: Adding to iommu group 1
[    0.633350] pci 0000:ff:0c.2: Adding to iommu group 1
[    0.633368] pci 0000:ff:0c.3: Adding to iommu group 1
...

2、查询直通组,输入以下命令:

find /sys/kernel/iommu_groups/ -type l

如果出现以下类似内容,则代表开启直通成功;反之没有任何内容,则没有开启。

/sys/kernel/iommu_groups/17/devices/0000:ff:16.1
/sys/kernel/iommu_groups/45/devices/0000:03:00.0
/sys/kernel/iommu_groups/35/devices/0000:00:05.4
/sys/kernel/iommu_groups/7/devices/0000:ff:13.1
/sys/kernel/iommu_groups/25/devices/0000:ff:17.7
/sys/kernel/iommu_groups/25/devices/0000:ff:17.5
/sys/kernel/iommu_groups/25/devices/0000:ff:17.6
...
5

评论区