Wenn der Zugriff auf USB-Geräte von Ihrem Xen-Gastsystem aus zu einer Herausforderung wird, hilft Ihnen unser Leitfaden zum USB-Passthrough in Xen, dieses Problem zu lösen. In diesem Artikel finden Sie einfache Beschreibungen der gängigsten Methoden, um USB-Peripheriegeräte an eine Xen-VM weiterzuleiten.
Einfache Bedienung:
Breite Kompatibilität:
Leistung:
Flexibilität:
Nach der Verbindung erscheint das Gerät im Gerätemanager des Gastsystems, als wäre es physisch an die VM angeschlossen.
Beim Arbeiten mit dem Xen-Hypervisor können USB-Geräte über native Methoden oder spezialisierte Software an virtuelle Maschinen (VMs) angeschlossen werden.
Jede native Methode für USB-Passthrough in Xen hat spezifische Anwendungsfälle und Einschränkungen. Emulierte USB-Controller sind einfacher einzurichten, bieten jedoch geringere Leistung. PVUSB stellt einen Mittelweg mit besserer Effizienz dar, erfordert jedoch mehr Konfiguration. PCI-Passthrough bietet die höchste Leistung, aber weniger Flexibilität bei der Geräteauswahl.
Nachfolgend konzentrieren wir uns auf die nativen Methoden und bieten dabei eine klare Struktur sowie eine detaillierte Erklärung.
Unterstützte Gastsysteme: Nur für HVM-Domänen (Hardware Virtual Machine) verfügbar; inkompatibel mit Stub-Domänen.
Mechanismus: QEMU stellt dem Gast ein emuliertes USB-Controller-Modul zur Verfügung. Die Emulationsschicht fängt USB-Befehle des Gastbetriebssystems ab und leitet sie an USB-Geräte des Hosts weiter.
Vorteile:
Nachteile:
usb=1
usbdevice=['tablet', 'host:1.6', 'host:0424:460']
host:1.6
für Bus- und Gerätenummer, während host:0424:460
die vendorid:deviceid
angibt.
Voraussetzungen:
usbfront
-Treiber im Gastsystem und usbback-Treiber in dom0.xl/libxl
oder xm/xend
für ältere Versionen).Mechanismus: Der usbfront
-Treiber kommuniziert direkt mit dem usbback-Treiber in dom0 und umgeht dabei die QEMU-Emulation.
Vorteile:
Nachteile:
usbfront
und usbback
installiert und geladen sind.xm/xend
:
usb=1
usbdevice=['hostbus=1, hostaddr=2']
xl/libxl:
usb=1
usbctrl=['type=qusb, version=2']
usbdevice=['host:1.2']
Mechanismus: Der gesamte USB-Controller wird der Gast-VM zugewiesen, sodass diese die volle Kontrolle über alle daran angeschlossenen Geräte erhält.
Vorteile:
Nachteile:
pci=['00:1d.0']
00:1d.0
für die PCI-ID des USB-Controllers.Anwendungsfälle der Methoden:
Emulierter USB-Controller: Vereinfacht die Konfiguration, bietet jedoch geringere Leistung.
PVUSB: Kombiniert Effizienz und Komplexität mit besserer Gerätekompatibilität.
PCI-Passthrough: Liefert die beste Leistung, erfordert jedoch den Verzicht auf den Zugriff des Hosts auf den USB-Controller.
Durch das Verständnis der Stärken und Schwächen dieser Methoden können Sie diejenige auswählen, die am besten zu Ihren Anforderungen passt.