Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
virtualisierung:proxmox_kvm_und_lxc:usbdevice_an_eine_vm_durchschleusen [2017/04/12 22:23] adminvirtualisierung:proxmox_kvm_und_lxc:usbdevice_an_eine_vm_durchschleusen [2020/03/04 00:38] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 3: Zeile 3:
 **__Getestet mit Proxmox 4.4__** **__Getestet mit Proxmox 4.4__**
  
-Manchmal ist es Sinnvoll ein USBgerät der Gastmaschine direkt durchzureichen. Z.B. ein Dongle... Die Möglichkeiten die man mit Proxmox hat werden in diesem Howto beschrieben. Es gibt zwei Möglichkeiten USB dem Gast zu übergeben. Zum einen kann man eine bestimmte HardwareID des USBgerätes einer VM zuordnen, somit ist es völlig egal wo man das USB-Gerät am Server anschließt.+Manchmal ist es Sinnvoll ein USBgerät der Gastmaschine direkt durchzureichen. Z.B. ein Dongle... Die Möglichkeiten die man mit Proxmox hat werden in diesem Howto beschrieben. Es gibt Möglichkeiten USB dem Gast zu übergeben. Zum einen kann man eine bestimmte HardwareID des USBgerätes einer VM zuordnen, somit ist es völlig egal wo man das USB-Gerät am Server anschließt.
 Zum Zweiten kann man einen USBanschluss des Servers einer VM zuordnen. In dem Fall ist das angeschlossenen Gerät egal, aber der Anschluss am Server muss immer der gleiche sein. Diese Funktion ist für USB 2.0 und auch 3.0 verfügbar.  Zum Zweiten kann man einen USBanschluss des Servers einer VM zuordnen. In dem Fall ist das angeschlossenen Gerät egal, aber der Anschluss am Server muss immer der gleiche sein. Diese Funktion ist für USB 2.0 und auch 3.0 verfügbar. 
 +v
 ===== Definiertes USB-Gerät der VM durchschleusen ===== ===== Definiertes USB-Gerät der VM durchschleusen =====
  
-Z.B. hier ein Flashstick.+Z.B. hier ein Bluetoothstick.
 <code> <code>
-lsusb | grep Alcor+lsusb | grep Bluetooth
 </code> </code>
 Das Ergebniss ist dann: Das Ergebniss ist dann:
 <code> <code>
-Bus 002 Device 013: ID 058f:6387 Alcor Micro Corp. Flash Drive+Bus 003 Device 003: ID 0a5c:21e8 Broadcom Corp. BCM20702A0 Bluetooth 4.0
 </code> </code>
 Das Gerät fügt man dann mit dem ''qm'' Befehl hinzu: Das Gerät fügt man dann mit dem ''qm'' Befehl hinzu:
 <code> <code>
-qm set <vmid> -usb0 host=058f:6387+qm set 109 -usb0 host=0a5c:21e8
 </code> </code>
-Danach muss man die VM herunterfahren und wieder starten, ein Reboot funktioniert hier nicht, da das Device initalisiert werden muss. Man natürlich auch mehrere USB-Geräte hinzfügen. Einfach die Nummer hinauf zählen: ''-usb1'', ''-usb2'', usw.+Danach muss man die VM herunterfahren und wieder  
 +, ein Reboot funktioniert hier nicht, da das Device initalisiert werden muss. Man natürlich auch mehrere USB-Geräte hinzfügen. Einfach die Nummer hinauf zählen: ''-usb1'', ''-usb2'', usw
 +Man kann das auch noch mit dem Qemu-Monitor darstellen, SSH oder im Webinterface.  
 +<code> 
 +qm monitor 109 
 +Entering Qemu Monitor for VM 109 - type 'help' for help 
 +qm> 
 +</code> 
 +<code> 
 +qm> info usb 
 +  Device 1.1, Port 1, Speed 12 Mb/s, Product BCM20702A0, ID: usb0 
 +</code> 
 +Den Bluetoothstick kann man nun anstecken wo man möchte. Um das Gerät nun auch wieder zu entfernen gibt man folgenden Befehl ein: 
 +<code> 
 +qm set 109 -delete usb0 
 +</code> 
 +Danach die VM wieder herunter fahren, und Starten.
  
 ===== USBport des Host/Servers einer VM übergeben.  ===== ===== USBport des Host/Servers einer VM übergeben.  =====
  
-Versuchen wir nun einen USBport direkt der VM zu übergeben. Hierfür bedienen wir uns dem Qemumonitor. Dieser ist über das Kommando ''qm monitor <vmid>'' oder auch über das PVE Webinterface verfügbar. Das Ergeniss hier sieht so aus:+Versuchen wir nun einen USBport direkt der VM zu übergeben. Hierfür bedienen wir uns wieder dem Qemumonitor. Dieser ist über das Kommando ''qm monitor <vmid>'' oder auch über das PVE Webinterface verfügbar. Das Ergeniss hier sieht so aus:
 <code> <code>
-qm monitor 100 +qm monitor 109 
-Entering Qemu Monitor for VM 100 - type 'help' for help+Entering Qemu Monitor for VM 109 - type 'help' for help
 qm>  qm> 
 </code> </code>
 +<code>
 + qm> info usbhost
 +  Bus 3, Addr 4, Port 6, Speed 12 Mb/s
 +    Class ff: USB device 0a5c:21e8, BCM20702A0
 +  Bus 3, Addr 2, Port 10, Speed 1.5 Mb/s
 +    Class 00: USB device 051d:0002, Back-UPS ES 700G FW:871.O2 .I USB FW:O2 
 +</code>
 +Wir werden nun den USBport einem Windowsserver 2016 durchreichen wo unser Bluetootstick angeschlossen ist. Beachten müssen hier wir BUS und Port. 
 +<code>
 +qm set 109 -usb0 host=3-6
 +</code>
 +Nun die VM wieder herunter fahren und neu Starten. Nun kann man auf diesem USBport verschieden Geräte im Betrieb an und abstecken so mit man es von einer PHY Maschine gewöhnt ist. Gerät entfernen, gleicher Vorgang wie vorhin. 
 +
 +===== USB Hotplug im laufenden Betrieb ohne Config =====
 +
 +Man kann auch ohne jeglichen Konfigurationsaufwand ein USBgerät per Hotplug mit dem Qemumonitor an und abschließen. Der Nachteil: Es ist nicht persistent. Und wieder geht's um unseren Bluetoothstick:
 <code> <code>
 qm> info usbhost qm> info usbhost
-  Bus 4, Addr 2, Port 1, Speed 12 Mb/s +  Bus 3, Addr 6, Port 6, Speed 12 Mb/s 
-    Class 00: USB device 046b:ff10Virtual Keyboard and Mouse +    Class ff: USB device 0a5c:21e8BCM20702A0 
-  Bus 6, Addr 2, Port 2, Speed 1.5 Mb/s +  Bus 3, Addr 2, Port 10, Speed 1.5 Mb/s 
-    Class 00: USB device 0624:0294Dell 03R874 +    Class 00: USB device 051d:0002Back-UPS ES 700G FW:871.O2 .I USB FW:O2
-  Bus 2, Addr 3, Port 1, Speed 480 Mb/s +
-    Class 00: USB device 0930:6533, DataTraveler 2.0 +
-  Auto filters: +
-    Bus *, Addr *, Port *, ID 0930:6533+
 </code> </code>
 +Wieder geht es hier nur um das USBport des Hosts, also
 +<code>
 +qm> device_add usb-host,hostbus=3,hostport=6,id=mein_bt_stick
 +qm> info usb
 +  Device 0.1, Port 1, Speed 12 Mb/s, Product BCM20702A0, ID: mein_bt_stick
 +</code>
 +Wichtig ist wir hier eine ID vergeben, sonst kann das Gerät bei aufendem Gast nicht entfernt werden Und schon ist das USBgerät am Gast verfügbar. Entfernt wird es wieder mit:
 +<code>
 +qm> device_del mein_bt_stick
 +</code>
 +
 +===== USB Hotplug direkt vom Client aus über Spice =====
 +
 +Man kann auch sehr konfortabel direkt vom Spiceclient (virt-viewer) jedes beliebige USB-Gerät per Mausklick einbinden. Hierfür muss die VM aber mit [[https://pve.proxmox.com/wiki/SPICE|Spice]] konfiguriert sein. Weiters muss mindes, ein USB-Spice-Eintrag in der VMconfig erstellt werden.
 +<code>
 +nano /etc/pve/qemu-server/109.conf
 +</code>
 +<code>
 +...
 +usb0: spice
 +usb1: spice
 +...
 +</code>
 +Die VM muss hierfür natürlich heruntergefahren und neu gestartet werden. Danach kann im [[https://virt-manager.org/download/|Virt-Viewer]] bequem sein USBgerät ein und Aushängen. 
 +
 +{{:virtualisierung:proxmox_kvm_und_lxc:screenshot_20170412_233807.png?direct&400 |}}
 +\\
 +Virt-Viewer gibt es zwar für alle Betriebssysteme, diese Funktion gibt es aber nur in der Linuxversion. 
 +