IOMMU-Aktivierung
Um PCIe-Geräte wie Grafikkarten, Netzwerkkarten oder USB-Controller direkt an eine virtuelle Maschine durchzureichen, ist die Aktivierung der IOMMU-Unterstützung im Kernel notwendig.
1. Prozessor-Typ und Virtualisierungsfähigkeit prüfen
Im Terminal ausführen:
lscpu | grep Virtualization
Die Ausgabe sollte enthalten:
VT-x
oderVT-d
bei IntelAMD-V
oderAMD-Vi
bei AMD
Mit folgendem Befehl prüfen, ob IOMMU aktivierbar ist:
dmesg | grep -i iommu
2. IOMMU im GRUB aktivieren
Öffne die GRUB-Konfigurationsdatei:
sudo nano /etc/default/grub
Füge in der Zeile GRUB_CMDLINE_LINUX_DEFAULT
folgende Einträge hinzu:
- für Intel:
intel_iommu=on iommu=pt
- für AMD:
amd_iommu=on iommu=pt
Beispiel:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"
3. GRUB-Konfiguration neu generieren
sudo grub-mkconfig -o /boot/grub/grub.cfg
4. Reboot
sudo reboot
5. IOMMU-Gruppen prüfen
Nach dem Neustart kannst du mit folgendem Skript deine IOMMU-Gruppen analysieren:
#!/bin/bash
shopt -s nullglob
for g in /sys/kernel/iommu_groups/*; do
echo "IOMMU-Gruppe ${g##*/}:"
for d in $g/devices/*; do
echo -e "\t$(lspci -nns ${d##*/})"
done
done
Speichere das Skript z. B. als iommu.sh
und führe es aus:
chmod +x iommu.sh
./iommu.sh
Jedes Gerät, das durchgereicht werden soll, sollte in einer eigenen Gruppe sein.
Hinweis
Wenn Geräte (z. B. GPU und Audio-Device) in einer gemeinsamen Gruppe sind, kann ein ACS-Override notwendig werden – dies ist jedoch experimentell und nur fortgeschrittenen Nutzer:innen empfohlen.
Weiter mit: VFIO-Bindung