Benutzer-Werkzeuge

Webseiten-Werkzeuge


it-wiki:proxmox:usb_passthrough

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
it-wiki:proxmox:usb_passthrough [2020/03/05 08:01] markoit-wiki:proxmox:usb_passthrough [2020/03/05 08:19] (aktuell) – [Dank udev Rule neues Device mit korrekter Gruppenzuordnung] marko
Zeile 1: Zeile 1:
 ====== USB Device an einen Container durchreichen ====== ====== USB Device an einen Container durchreichen ======
 +==== Informationen sammeln ====
 <code bash> <code bash>
 (root@n1-pve-cluster marko) > lsusb  (root@n1-pve-cluster marko) > lsusb 
Zeile 11: Zeile 11:
 Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 </code> </code>
-Mich interessirt+Mich interessiert
 <code> <code>
 Future Technology Devices International, Ltd FT232 Serial (UART) IC Future Technology Devices International, Ltd FT232 Serial (UART) IC
Zeile 24: Zeile 24:
 Für mich relevant sind die zwei Zahlen 189 und 257. Diese benötigen wir für unsere Container Konfiguration. Für mich relevant sind die zwei Zahlen 189 und 257. Diese benötigen wir für unsere Container Konfiguration.
  
 +==== Konfiguration des Containers anpassen ====
 Nun bearbeiten wir das Container Configfile. Dafür liste ich mir alle Container von der Node auf und schaue mir dir Container ID meines Containers an welcher das USB Device bekommen soll. (p-fhem02) Nun bearbeiten wir das Container Configfile. Dafür liste ich mir alle Container von der Node auf und schaue mir dir Container ID meines Containers an welcher das USB Device bekommen soll. (p-fhem02)
 <code bash> <code bash>
Zeile 38: Zeile 39:
 <code bash> <code bash>
 vim /etc/pve/lxc/201.conf vim /etc/pve/lxc/201.conf
-<code>+</code>
  
 Und passen die entsprechenden 2 Zahlen an Und passen die entsprechenden 2 Zahlen an
 <code> <code>
-lxc.cgroup.devices.allow:188: rwm+lxc.cgroup.devices.allow:189:257 rwm
 lxc.mount.entry: /dev/SIGNALduino dev/SIGNALduino none bind,optional,create=file lxc.mount.entry: /dev/SIGNALduino dev/SIGNALduino none bind,optional,create=file
 </code> </code>
  
 +==== Dank udev Rule neues Device mit korrekter Gruppenzuordnung ====
 +Und nun zum wesentlichen. Wie man sehen kann habe ich in meiner Konfig /dev/SIGNALduino durchgereicht. Dies musste ich machen damit die tatsächliche benötige Gruppe im Container auch die Rechte bekommt.
  
 +Damit mir ein solches Device auch erstellt wird
 +**/dev/SIGNALduino**
 +muss eine entsprechende udev Rule auf dem Host angelegt werden.
  
 +Dafür benötigen wir etwas Vorarbeit. Wir müssen unser Device besser Identifizieren.
  
  
 <code bash> <code bash>
-(root@n1-pve-cluster marko) > udevadm info -a -n /dev/ttyUSB0 | grep '{serial}' | head -n1+(root@n1-pve-cluster marko) > udevadm info -a -n /dev/ttyUSB0 | grep '{idProduct}' | head -n1
 </code> </code>
- 
 <code bash> <code bash>
-vim /etc/udev/rules.d/98-RFXtrx-CUL.rules+(root@n1-pve-cluster marko) > udevadm info -a -n /dev/ttyUSB0 | grep '{idVendor}' | head -n1 
 +</code>
  
 +Mit diesen Infos erstellen wir unsere Rule
 +<code bash>
 +(root@n1-pve-cluster marko) > vim /etc/udev/rules.d/98-RFXtrx-CUL.rules
 +</code>
 +<code>
 SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", ATTRS{idProduct}=="6001", ATTRS{idVendor}=="0403", SYMLINK+="RFXCOM_RFXtrx433_A1XEABQO", MODE="0666", GROUP="dialout" SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", ATTRS{idProduct}=="6001", ATTRS{idVendor}=="0403", SYMLINK+="RFXCOM_RFXtrx433_A1XEABQO", MODE="0666", GROUP="dialout"
 +</code>
 +
 +Zum Abschluss müssen die udev Rules neu eingelesen werden
 +<code bash>
 +(root@n1-pve-cluster marko) > udevadm control --reload-rules && udevadm trigger
 +</code>
 +
 +Und zu guter letzt den Container neu starten
 +<code bash>
 +(root@n1-pve-cluster marko) > pct stop <cid>
 +(root@n1-pve-cluster marko) > pct start <cid>
 </code> </code>
it-wiki/proxmox/usb_passthrough.1583395298.txt.gz · Zuletzt geändert: von marko