PVE ASM1166 直通
本文最后更新于 2025年9月10日 晚上
本文只是一个记录,所用的方法未必是最优的,即某些步骤可能没有实质作用
环境
PVE 9.0
内核版本 6.14.8-2-pve
CPU: AMD R9
背景
上周六买了点硬盘组阵列,由于主板没有足够的 SATA 接口,买了一个
ASM1166 的扩展卡,把 M.2 转成 SATA 接口。
谁料原本能直通的主板 SATA
控制器,在使用了这个扩展卡后,二者上的硬盘都无法直通了。
过程
1. 找到 SATA 控制器的 PCI 设备
1 |
|
1 |
|
发现控制器被 ahci 驱动占用
2. 查看 IOMMU 组
确保控制器在单独的 IOMMU 组中 1
find /sys/kernel/iommu_groups/ -type l
3. 把设备绑定到 vfio-pci 驱动
1 |
|
4. 更新 grub
在 /etc/default/grub 的 GRUB_CMDLINE_LINUX_DEFAULT 中加:
1
amd_iommu=on iommu=pt vfio-pci.ids=1b21:1166
5. 开机时加载 VFIO 所需的核心内核模块
1 |
|
6. 禁用 ahci 驱动
这一步会导致宿主机无法识别 SATA 硬盘,慎重操作
1 |
|
7. 重启
1 |
|
8. 验证
1 |
|
确认硬盘无法被宿主机识别
PVE ASM1166 直通
https://term-inator.github.io/2025/09/10/asm1166-passthrough/