Problem beim durchreichen Proxmox USB485 an Container

Begonnen von Jewe, 21 April 2023, 21:54:52

Vorheriges Thema - Nächstes Thema

Jewe

Hallo zusammen,

versuche gerade unter Proxmox mit LXC-Container Debian 11 den USB485 Stick an den Container durchzureichen. Leider klappt es nicht ganz, bzw. in FHEM auf dem Container bekomme ich die Meldung "Modbus: Can't open /dev/ttyUSB0: Permission denied"

Folgende Info´s dazu:

Im PROXMOX Knoten PVE
jwe@pve:~# lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/7p, 5000M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M
    |__ Port 6: Dev 3, If 0, Class=Hub, Driver=hub/2p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/9p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
    |__ Port 6: Dev 3, If 0, Class=Hub, Driver=hub/2p, 480M

jwe@pve:~# lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/7p, 5000M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M
    |__ Port 6: Dev 3, If 0, Class=Hub, Driver=hub/2p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/9p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 2: Dev 5, If 0, Class=Vendor Specific Class, Driver=ch341, 12M        <<-- Das sit der Stick
    |__ Port 6: Dev 3, If 0, Class=Hub, Driver=hub/2p, 480M

jwe@pve:~# ls -la /dev/bus/usb/001/002
crw-rw-r-- 1 root root 189, 1 Apr 20 18:55 /dev/bus/usb/001/002

jwe@pve:~# ls -la /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 0 Apr 20 21:09 /dev/ttyUSB0

jwe@pve:/dev# ls -l /dev/serial/by-id/
total 0
lrwxrwxrwx 1 root root 13 Apr 20 21:37 usb-1a86_USB_Serial-if00-port0 -> ../../ttyUSB0

nano/etc/pve/lxc/100.conf

arch: amd64
cores: 4
features: keyctl=1,nesting=1
hostname: fhem-test
memory: 4096
net0: name=eth0,bridge=vmbr0,firewall=1,hwaddr=92:0F:E7:E5:1C:31,ip=dhcp,type=veth
ostype: debian
rootfs: local-lvm:vm-100-disk-0,size=64G
swap: 512
unprivileged: 1
lxc.cgroup.devices.allow: c 189:* rwm
lxc.mount.entry: /dev/bus/usb/001/002 dev/bus/usb/001/002 none bind,optional,create=file
lxc.cgroup.devices.allow: c 188:* rwm
lxc.mount.entry: /dev/ttyUSB0 dev/ttyUSB0 none bind,optional,create=file

Im Container 100 fhem-test
jwe@fhem-test:~#  lsusb
Bus 002 Device 003: ID 0bda:0415 Realtek Semiconductor Corp. 2-Port USB 3.0 Hub
Bus 002 Device 002: ID 0bda:0411 Realtek Semiconductor Corp. Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0bda:5415 Realtek Semiconductor Corp. 2-Port USB 2.0 Hub
Bus 001 Device 005: ID 1a86:7523 QinHeng Electronics CH340 serial converter
Bus 001 Device 002: ID 0bda:5411 Realtek Semiconductor Corp. RTS5411 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

jwe@fhem-test:~# udevadm info -a -n /dev/ttyUSB0 | grep '{serial}' | head -n1
    ATTRS{serial}=="0000:00:15.0"

nano /etc/udev/rules.d/50-usb.rules

SUBSYSTEMS=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", ATTRS{serial}=="0000:00:15.0", GROUP="users", MODE="0666"

Berechtigungen im Container
jwe@fhem-test:~$ ls -l /dev/ttyUSB0
crw-rw---- 1 nobody nogroup 188, 0 Apr 20 21:37 /dev/ttyUSB0

jwe@fhem-test:~$ sudo chown root:dialout /dev/ttyUSB0
chown: changing ownership of '/dev/ttyUSB0': Operation not permitted
jwe@fhem-test:~$ sudo chmod o+rw /dev/ttyUSB0
chmod: changing permissions of '/dev/ttyUSB0': Operation not permitted
jwe@fhem-test:~$ chmod -R 777 /dev/ttyUSB0
chmod: changing permissions of '/dev/ttyUSB0': Operation not permitted


Alle meine Versuche die Berechtigungen zu ändern scheitern. Denke aber das ist ja das Problem: nobody nogroup ist nicht so toll.

Kann mir bitte jemand helfen ?

Danke, Jens


Benni

Du musst auf dem Node die Berechtigung für /dev/ttyUSB0 korrigieren, sonst kann im Container keiner darauf zugreifen.

Siehe bspw. hier:

https://wiki.fhem.de/wiki/Conbee/deCONZ_im_Proxmox_LXC-Container_(Tutorial)#Anpassung_der_Berechtigungen_auf_dem_Node

gb#

Jewe

#2
das habe ich gemacht:
root@pve:~# ls -l /dev/ttyUSB0
crw-rw-rw- 1 root dialout 188, 0 Apr 21 22:17 /dev/ttyUSB0

und die Datei /etc/udev/rules.d/50-usb.rules
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", ATTRS{serial}=="0000:00:15.0", GROUP="users", MODE="0666"

Jewe

Hey,
seitdem habe ich nichts mehr gemacht. Heute den Proxmox neu gestartet, und nun läuft es.
Wundersame Heilung? :-) Proxmox komplett neu gestartet habe ich auch schon am Freitag.

Werde das mal beobachten, bzs beim nächsten USB Stick schauen ob es dann gleich läuft.

Jens