硬件直通
注意:需要主板支持VT-d,如果不支持的话不能使用硬件直通。
编辑文件:
vim /etc/default/grub
将如下内容:
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
intel的cpu替换为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on pcie_acs_override=downstream"
amd的cpu替换为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on pcie_acs_override=downstream"
- pcie_acs_override=downstream为开启分组直通,一般用于网卡,可以使PCI网卡每个口直通给不同的虚拟机(不是所有网卡都需要设置,默认就设置上吧)
如果需要直通显卡,则替换为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on pcie_acs_override=downstream video=efifb:off"
amd的cpu同理在后面加上
video=efifb:off
输入如下命令更新grub:
update-grub
修改文件:
vim /etc/modules
在文件最后添加如下信息:
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
输入如下命令更新initramfs:
update-initramfs -u -k all
输入如下命令验证是否开启iommu:
dmesg | grep 'remapping'
如果成功开启,intel的cpu会显示:
DMAR-IR: Enabled IRQ remapping in x2apic mode
amd的cpu会显示:
AMD-Vi: Interrupt remapping enabled
最后重启
硬盘直通
ls /dev/disk/by-id
qm set {vmid} -sata1 /dev/disk/by-id/{diskid}