Wie verwendet man USB-Passthrough in Proxmox VE für VMs und LXCs?

USB-Passthrough ermöglicht es Proxmox-VE-Benutzern, physische Geräte mit virtuellen Maschinen oder Containern zu verbinden. Dieser Artikel erklärt die Grundlagen, Einrichtungsschritte, erweiterten Optionen und Lösungen für häufige Probleme. Lesen Sie weiter, um USB-Passthrough in Ihrer Umgebung zu meistern.

download-icon
Kostenloser Download
für VM, OS, DB, Datei, NAS usw.
emma

Updated by Emma on 2025/08/22

Inhaltsverzeichnis
  • Was ist PVE USB-Passthrough und warum benötigen Sie dies?

  • Voraussetzungen für USB-Passthrough in Proxmox VE

  • Wie behandelt PVE USB-Passthrough intern?

  • Methode 1: USB-Gerät über die Web-Oberfläche an eine VM übergeben

  • Methode 2: Weiterleiten von Geräten an LXC-Container

  • Methode 3: Kompletter Controller-Passthrough mithilfe der PCIe-Zuweisung

  • Best Practices für USB-Passthrough in Proxmox VE

  • Problembehandlung bei häufigen Problemen mit PVE USB-Passthrough

  • Schutz der Proxmox-VM mit Vinchin

  • PVE USB-Passthrough-Häufig gestellte Fragen

  • Fazit

USB-Passthrough ist eine entscheidende Funktion für viele Proxmox VE Benutzer. Sie ermöglicht es, physische USB-Geräte – wie Lizenzdongles oder Chipkartenleser – an virtuelle Maschinen oder Container anzuschließen, als wären sie direkt verbunden. Doch was passiert eigentlich im Hintergrund? Und wie stellt man sicher, dass dies zuverlässig in verschiedenen Konfigurationen funktioniert?

In dieser Anleitung führen wir Sie Schritt für Schritt durch den Aufbau Ihres Verständnisses – von der grundlegenden Geräteabbildung bis hin zum erweiterten Controller-Passthrough – und erläutern praktische Lösungen für häufige Herausforderungen. Egal ob Sie ein Home Lab betreiben oder eine Unternehmensinfrastruktur verwalten: Die Beherrschung des USB-Passthrough kann neue Möglichkeiten in Ihrer virtuellen Umgebung erschließen.

Was ist PVE USB-Passthrough und warum benötigen Sie dies?

USB-Passthrough ermöglicht es einem virtuellen Maschine (VM) oder einem LXC-Container, auf ein physisches USB-Gerät zuzugreifen, das an Ihren Proxmox-Host angeschlossen ist. Das bedeutet, dass Software innerhalb Ihres Gastsystems Hardware-Schlüssel, Speicherlaufwerke, Zigbee-Sticks oder andere Peripheriegeräte genauso nutzen kann wie auf einem physischen System.

Wie funktioniert das? Bei VMs nutzt Proxmox die eingebaute Unterstützung von QEMU, um den USB-Verkehr vom Host zum Gastbetriebssystem umzuleiten. Bei Containern (LXC) verlässt es sich auf Kernel-Funktionen von Linux wie cgroups und Namespaces, um Geräteknoten sicher bereitzustellen.

Warum ist das wichtig? Viele Geschäftsanwendungen erfordern den direkten Hardwarezugriff – beispielsweise:

  • Verwenden eines Hardware-Sicherheitsschlüssels für die Zwei-Faktor-Authentifizierung

  • Verbinden externer Laufwerke zum Datentransfer

  • Sicheres Anmelden durch Anschluss von Chipkartenlesern

  • Integration von IoT-Geräten über Zigbee- oder Z-Wave-Dongles

Ohne ordnungsgemäße Passthrough-Konfiguration bleiben diese Geräte in Ihren Gastsystemen unsichtbar. Wenn Sie verstehen, wie Passthrough funktioniert – und welche Einschränkungen es hat –, können Sie sich später Ärger ersparen.

Voraussetzungen für USB-Passthrough in Proxmox VE

Bevor Sie den USB-Passthrough in Proxmox VE einrichten, überprüfen Sie einige grundlegende Anforderungen:

Stellen Sie zunächst sicher, dass die Virtualisierung (Intel VT-d oder AMD-Vi) in der BIOS/UEFI-Einstellung Ihres Servers aktiviert ist. Für die PCIe-Controller-Passthrough-Funktion (fortgeschrittene Anwendungsfälle) aktivieren Sie die IOMMU-Unterstützung, indem Sie intel_iommu=on oder amd_iommu=on den Kernel-Boot-Parametern hinzufügen.

Als Nächstes sollten Sie wissen, welchen Typ von USB-Controller Sie besitzen – EHCI (USB 2.0) oder xHCI (USB 3.x) –, da dies die Kompatibilität und Stabilität beeinflusst, wenn Sie ganze Controller durchreichen.

Beachten Sie schließlich, dass neuere Versionen von Proxmox Geräteberechtigungen aufgrund von Änderungen an den udev-Regeln oder Kernel-Aktualisierungen möglicherweise anders handhaben. Prüfen Sie stets die Kompatibilitätshinweise, bevor Sie Produktionssysteme aktualisieren.

Wie behandelt PVE USB-Passthrough intern?

Wenn Sie ein physisches USB-Gerät einer VM mit Proxmox VE zuweisen:

1. Der Host erkennt das Gerät anhand seiner einzigartigen Hersteller-ID (idVendor) und Produkt-ID (idProduct).

2. QEMU erstellt eine virtuelle Darstellung dieses Geräts innerhalb der virtuellen Maschine.

3. Die gesamte Kommunikation zwischen Gast-Software und Hardware erfolgt über diesen Kanal – Emulation wird umgangen, um nahezu native Geschwindigkeit zu erreichen.

Für LXC-Container:

1. Der Host macht spezifische /dev-Knoten durch Bind-Mounts zugänglich.

2. Die Cgroup-Berechtigungen steuern, welche Geräte innerhalb jedes Containers sichtbar sind.

3. Persistente Symlinks unter /dev/serial/by-id helfen dabei, stabile Pfade beizubehalten, selbst wenn Geräte ab- und wieder angeschlossen werden.

Dieser direkte Ansatz bietet hohe Leistung, erfordert jedoch eine sorgfältige Konfiguration – insbesondere im Bereich von Berechtigungen und Isolationsgrenzen.

Methode 1: USB-Gerät über die Web-Oberfläche an eine VM übergeben

Die einfachste Möglichkeit, ein USB-Gerät an eine virtuelle Maschine weiterzugeben, ist über die Web-Oberfläche von Proxmox. Diese Methode eignet sich für die meisten Benutzer, die Linux- oder Windows-Gäste betreiben.

  1. Verbinden Sie das gewünschte USB-Gerät mit einem verfügbaren Anschluss auf Ihrem Hostserver.

  2. Wählen Sie in der Web-Benutzeroberfläche die Ziel-VM aus.

  3. Klicken Sie auf Hardware, dann auf  Add > USB Device.

  4. Wählen Sie eine der folgenden Optionen aus:

    • Use USB Vendor/Device ID: Für ein spezifisches Gerät, das unverändert bleibt.

    • Use USB Port: Für flexible Installationen, bei denen jedes Gerät, das an einen bestimmten Anschluss angeschlossen wird, weitergeleitet wird.

  5. Änderungen speichern und den virtuellen Computer neu starten. Führen Sie innerhalb Ihres Gastbetriebssystems den Befehl lsusb aus (Linux) oder öffnen Sie den Geräte-Manager (Windows), um zu prüfen, ob das Gerät erfolgreich weitergeleitet wurde.

Methode 2: Weiterleiten von Geräten an LXC-Container

Das Weiterleiten physischer Geräte an LXC-Container ist aufgrund der strengeren Isolation komplizierter, aber dennoch machbar.

Tipp 1: Verwenden persistenter Gerätepfade

Persistente Pfade unter /dev/serial/by-id bieten stabile Geräteverknüpfungen, auch nach dem Ab- und Wiederanschließen von Geräten. Um diese Methode zu verwenden:

  1. Auf dem Host ausführen:
    ls -l /dev/serial/by-id
    Beispielausgabe:

    lrwxrwxrwx 1 root root 13 Sep 9 10:54 usb-Silicon_Labs_CP210x-if00-port0 -> ../../ttyUSB0
  2. Wählen Sie in der Web-Benutzeroberfläche den Zielcontainer aus und klicken Sie auf Resources.

  3. Klicken Sie auf Add > Device Passthrough und geben Sie den vollständigen Gerätepfad ein (z. B. /dev/serial/by-id/...).

  4. Änderungen speichern und den Container neu starten.

Tipp 2: Manuelles Bearbeiten der LXC-Konfiguration

Falls persistente Pfade nicht verfügbar sind oder Sie eine genauere Kontrolle über die Berechtigungen benötigen:

  1. Bearbeiten Sie die Konfigurationsdatei des Containers unter /etc/pve/lxc/<CTID>.conf und fügen Sie Folgendes hinzu:

    lxc.cgroup2.devices.allow: c 188:* rwm
    lxc.mount.entry: /dev/ttyUSB0 dev/ttyUSB0 none bind,optional,create=file
  2. Starten Sie den Container neu, um die Änderungen anzuwenden.

Verwaltung von Berechtigungen und Replug-Ereignissen

Manchmal führt das Ausstecken und erneute Einstecken von Geräten zu Berechtigungsrücksetzungen oder Änderungen in der Zuordnung der Gerätenodes unter /dev. Um damit umzugehen:

  1. Persisente UDEV-Regeln erstellen:
    Erstellen Sie eine benutzerdefinierte UDEV-Regel, um automatische Berechtigungsanpassungen und die Erstellung von Symlinks zu ermöglichen:

    SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", SYMLINK+="mydevice", GROUP="lxcuser", MODE="0660"

    Laden Sie die UDEV-Regeln mit folgendem Befehl neu:

    udevadm control --reload && udevadm trigger
  2. Automatisches Neustarten von Containern nach Replug-Ereignissen:
    Kombinieren Sie UDEV-Triggers mit Skripten, um Container nach Geräte-Replug-Ereignissen automatisch neu zu starten:

    pct restart <CTID>

Methode 3: Kompletter Controller-Passthrough mithilfe der PCIe-Zuweisung

Für maximale Leistung kann es sinnvoll sein, einen gesamten USB-Controller anstelle einzelner Geräte weiterzugeben. Dies ist besonders nützlich für Geräte mit hohem Datendurchsatz, wie z. B. externe SSDs.

  1. IOMMU aktivieren im BIOS und im Bootloader (intel_iommu=on oder amd_iommu=on).

  2. Find the controller address using:
    lspci | grep -i usb

  3. Den Controller-Treiber bei Bedarf mithilfe von VFIO-Tools binden:

    echo "8086:a36d" > /sys/bus/pci/drivers/vfio-pci/new_id
  4. Wählen Sie in der Web-Oberfläche die Ziel-VM aus, klicken Sie auf Hardware und anschließend auf Add > PCI Device.

  5. Wählen Sie die entsprechende Controller-Adresse aus und bestätigen Sie.

Wichtige Warnung: Vermeiden Sie die Zuweisung des Root-Hubs/Controllers für Tastatur-/Maus-Steuerung, es sei denn, Sie verfügen über verfügbare Remote-Verwaltungstools, da dies Sie sonst aus dem System aussperren könnte.

Best Practices für USB-Passthrough in Proxmox VE

Beim Weiterleiten physikalischer Geräte zwischen Hosts und Gästen sollte stets das Prinzip der minimsten Rechte angewendet werden, um Sicherheitsrisiken zu minimieren.

  • Gewähren Sie niemals umfassenderen Zugriff, als notwendig ist. Übermitteln Sie nur die erforderlichen Anbieter-/Produktkennungen.

  • Überwachen Sie die Protokolle regelmäßig auf ungewöhnliche Aktivitäten, insbesondere nach Upgrades oder Hardwareaustausch.

  • In Mehrbenutzerumgebungen sollten gruppenbasierte Einschränkungen mithilfe benutzerdefinierter UDEV-Regeln/Skripte verwendet werden, um den Gerätezugriff zu beschränken.

Problembehandlung bei häufigen Problemen mit PVE USB-Passthrough

Wenn Geräte nicht erkannt werden oder Berechtigungen fehlschlagen:

  1. USB-Erkennung prüfen:
    Führen Sie lsusb sowohl auf dem Host als auch auf dem Gastsystem aus, um die Erkennung zu überprüfen.

  2. Berechtigungsfehler:
    Überprüfen Sie die Gruppen-/Benutzereigentümerschaft unter /dev und korrigieren Sie diese mit chown oder chmod.

  3. Hot-Plug-Ausfälle:
    Stellen Sie sicher, dass der QEMU-Agent in den virtuellen Maschinen aktiviert ist, und verwenden Sie Skripte, um den Neustart von Containern für LXCs zu automatisieren.

Schutz der Proxmox-VM mit Vinchin

Nach der Konfiguration zuverlässiger PVE-Umgebungen – einschließlich erweiterter Funktionen wie USB-Passthrough – wünschen Sie eine leistungsstarke Backup-Lösung, um Daten zu schützen und die Geschäftskontinuität sicherzustellen.

Vinchin Backup & Recovery  ist eine Enterprise-Backup-Lösung für virtuelle Maschinen, die über fünfzehn gängige Plattformen unterstützt – darunter spezielle Unterstützung für Proxmox VE sowie VMware, Hyper-V, oVirt, OLVM, RHV, XCP-ng, XenServer, OpenStack, ZStack und weitere – allesamt über eine einheitliche Plattform verwaltet.

Zu den wichtigsten Funktionen gehören Incremental Backup-Technologie, die den Speicherbedarf minimiert; integrierte Daten-Deduplizierung und Kompression; nahtlose V2V-Migration zwischen heterogenen Plattformen; fein granulare Wiederherstellungsmöglichkeiten sowie geplante automatische Backups mit flexiblen Aufbewahrungsrichtlinien – alles darauf ausgerichtet, Effizienz im großen Maßstab zu gewährleisten, ohne Kompromisse bei Zuverlässigkeit oder Geschwindigkeit einzugehen.

Die intuitive Vinchin-Webkonsole macht es einfach, beliebige Proxmox-VMs zu schützen:

1. Wählen Sie den Proxmox VM aus, der gesichert werden soll;

Wählen Sie die Proxmox VM zum Sichern aus

2. Sichern Sie den Speicherort;

Sichern Sie den Speicherort

3. Backup-Strategien konfigurieren;

Sichern Sie Backup-Strategien

4. Auftrag einreichen.

Auftrag abschicken

Tausende vertrauen weltweit auf Vinchin – mit hohen Bewertungen aus verschiedenen Branchen – und jetzt können Sie alle Funktionen kostenlos mit unserer umfassenden 60-Tage-Testversion nutzen.

PVE USB-Passthrough-Häufig gestellte Fragen

F1: Kann ich einen neuen USB-Stick hot-plugen, sodass mein Windows Server ihn sofort erkennt?

A1: Ja – solange die Hotplug-Unterstützung sowohl in den QEMU-Einstellungen aktiviert ist als auch die Gastwerkzeuge installiert sind, erscheint der Stick sofort, ohne neu starten zu müssen.

Q2: Meine LXC-App kann keine Dateien schreiben, obwohl ich meinen Seriellen Adapter durchgeschleift habe – warum?

A2: Prüfen Sie die Gruppeneigentümerrechte/Modi-Bits unter /dev; passen Sie diese bei Bedarf mithilfe von benutzerdefinierten udev-Regeln oder chmod/chown-Befehlen an.

Fazit

Der flexible Ansatz von PVE ermöglicht es Administratoren, fast jede Art von physischen Peripheriegeräten – von Einzelplatz-Dongles bis hin zu ganzen Hochgeschwindigkeitscontrollern – sicher und effizient mit ihren virtualisierten Workloads zu verbinden. Mit zuverlässigen Backups, unterstützt von Vinchin, bleibt Ihre kritische Daten geschützt, egal wie komplex die Situation wird. Probieren Sie Vinchin noch heute aus – und genießen Sie Ruhe gewissheit sowie optimale Leistung!


Teilen auf:

Categories: VM Backup