Proxmox 开启硬件直通

6个月前 ( 11-04 ) 495阅读 0评论

Proxmox 开启硬件直通

TASK ERROR: cannot prepare PCI pass-through, IOMMU not present

image.png

启用IOMMU功能

Intel CPU

对于Intel CPU,添加 intel_iommu=on,操作如下:

1、Shell 里面输入命令:nano /etc/default/grub

root@pve:~# nano /etc/default/grub
Bash

2、在里面找到:GRUB_CMDLINE_LINUX_DEFAULT="quiet"

然后修改为

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
Bash

编辑完成后,使用快捷键 Ctrl + O 回车保存文件,Ctrl + X 退出编辑器。

3、使用命令 update-grub 保存更改并更新grub

root@pve:~# update-grub
Bash

4、更新完成后,使用命令 reboot 重启PVE系统

root@pve:~# reboot
Bash

从命令行运行 dmesg | grep -e DMAR -e IOMMU 如果没有输出,则说明有问题。

如果有,可基本确认这个过程顺利完成! 接下来就可以为虚拟机正常的添加硬件直通了。

 

AMD CPU

对于AMD CPU 添加 amd_iommu=on, 操作如下:

1、Shell 里面输入命令:nano /etc/default/grub

root@pve:~# nano /etc/default/grub
Bash

2、在里面找到:GRUB_CMDLINE_LINUX_DEFAULT="quiet"

然后修改为

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on"
Bash

编辑完成后,使用快捷键 Ctrl + O 回车保存文件,Ctrl + X 退出编辑器。

3、使用命令 update-grub 保存更改并更新grub

root@pve:~# update-grub
Bash

4、更新完成后,使用命令 reboot 重启PVE系统

root@pve:~# reboot
Bash

从命令行运行 dmesg | grep -e DMAR -e IOMMU 如果没有输出,则说明有问题。

如果有,可基本确认这个过程顺利完成! 接下来就可以为虚拟机正常的添加硬件直通了。

 

增加虚拟化驱动,加载vifo系统模块

这仅在必要时启用IOMMU转换,将iommu分组相关的内核模块启用,从而可以提高VM中未使用的PCIe设备的性能。

然后是修改 /etc/modules 文件

root@pve:~# nano /etc/modules
Bash

添加如下内容

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

然后重启一次服务器即可

image.png

文章版权声明:除非注明,否则均为IT技术交流分享 IDC管理计费系统 私有云管理系统 PVE管理系统 私有云系统原创文章,转载或复制请以超链接形式并注明出处。
取消
支付宝二维码
支付宝二维码
微信二维码