Clé combee non reconnu après migration proxmox

Bonjour à tous.
Je poste sur le plugin zigbeelinker, même si je pense que le problème n’est pas lié au plugin en lui même mais pour le contexte : je viens de migrer d’un proxmox 7.4.3 vers un proxmox 8.2.2 avec changement de hardware. Je ne fonctionne que avec des containers LXC.
En ce qui concerne jeedom, j’ai simplement récupéré le backup de l’ancien proxmox, que j’ai relancé sur le nouveau ( comme tout mes autres containers sur lesquels je n’ai eu aucuns soucis ). Petite subtilité, l’ID de container a changé.
Après restauration du backup, tout semble OK SAUF zigbee. Plus précisément, le démon se lance correctement, mais pop des messages comme quoi le service zigbee2mqtt n’est pas démarré.
Quand je le lance manuellement, et que je vérifie le status :

* zigbee2mqtt.service - zigbee2mqtt
   Loaded: loaded (/etc/systemd/system/zigbee2mqtt.service; disabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sun 2024-08-18 11:24:07 UTC; 2s ago
  Process: 13826 ExecStart=/usr/bin/npm start (code=exited, status=1/FAILURE)
 Main PID: 13826 (code=exited, status=1/FAILURE)
      CPU: 1.174s

Aug 18 11:24:07 jeedom npm[13826]: [2024-08-18 11:24:07] error:         z2m: Failed to start zigbee
Aug 18 11:24:07 jeedom npm[13826]: [2024-08-18 11:24:07] error:         z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails
Aug 18 11:24:07 jeedom npm[13826]: [2024-08-18 11:24:07] error:         z2m: Exiting...
Aug 18 11:24:07 jeedom npm[13826]: [2024-08-18 11:24:07] error:         z2m: Error: Error while opening serialport 'Error: Error: Inappropriate ioctl
Aug 18 11:24:07 jeedom npm[13826]:     at SerialPort.<anonymous> (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/src/adapter/deconz/driver/driver.ts:2
Aug 18 11:24:07 jeedom npm[13826]:     at SerialPort._error (/opt/zigbee2mqtt/node_modules/@serialport/stream/dist/index.js:82:22)
Aug 18 11:24:07 jeedom npm[13826]:     at /opt/zigbee2mqtt/node_modules/@serialport/stream/dist/index.js:118:18
Aug 18 11:24:07 jeedom systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Aug 18 11:24:07 jeedom systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Aug 18 11:24:07 jeedom systemd[1]: zigbee2mqtt.service: Consumed 1.174s CPU time.

J’en comprends que c’est la reconnaissance de la conbee2 qui empêche le démarrage. Et la je sèche…
Sur mon proxmox, la clé semble bien reconnu :

root@proxmox:~# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 1cf1:0030 Dresden Elektronik ZigBee gateway [ConBee II]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@proxmox:~# 
root@proxmox:~# ls -al /dev/serial/by-id/*
lrwxrwxrwx 1 root root 13 Aug 18 12:50 /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE2285526-if00 -> ../../ttyACM0

ça me parait pas trop mal. Sur mon jeedom par contre :

jeedom:~# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 1cf1:0030 Dresden Elektronik 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
jeedom:~# 
jeedom:~# ls -al /dev/serial/by-id/*
ls: cannot access '/dev/serial/by-id/*': No such file or directory

Dans la conf de mon container, j’avais les lignes suivantes :

lxc.cgroup2.devices.allow: c 189:* rwm
lxc.mount.entry: /lxc/102/devices/ttyACM0 dev/ttyACM0 none bind,optional,create=file

102 étant l’ID sur l’ancien proxmox, j’ai modifié pour le nouvel ID ( 100 ), mais pas mieux.

Dans ma conf zigbeelinker, c’est bien /dev/ttyACM0 qui est sélectionné. J’ai essayé en ne spécifiant pas de port, pas mieux.

Il ne doit me manquer grand chose, mais je n’arrive pas à mettre la main dessus.
J’ai également essayé en plaçant la clé sur d’autres USB ( USB2 et USB3 ), pas mieux.

Est ce que quelqu’un aurait une idée SVP ? Si besoin de plus de logs / infos, n’hésitez pas à demander.
Merci d’avance !

Ca aura plus de chance dans Machines Virtuelles DIY (Faire soi-même) avec le tag proxmox je pense, sujet déplacé, car ca n’a effectivement aucun lien avec le plugin.

Cherchez également parmi les sujets avec ce tag (cliquez dessus)

ok ça marche merci, désolé je ne suis pas familier avec le forum, même si je suis sur jeedom depuis quelques années, c’est rare que je post. Je vais regarder du côté de proxmox, effectivement je ne suis visiblement pas le seul à avoir eu ce problème.

Bonjour

Voir:https://discussions.flightaware.com/t/howto-rtl-sdr-dongle-pass-through-to-proxmox-lxc-container/89093

En adaptant le:

Cordialement

Bonjour,
Merci du lien. J’avais déjà tenté cette astuce, appliqué à la lettre ( en adaptant bien sur ) mais sans succès.

root@proxmox:~# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 024: ID 1cf1:0030 Dresden Elektronik ZigBee gateway [ConBee II]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@proxmox:~# chmod 0666 /dev/bus/usb/001/024

root@proxmox:~# ls -l /dev/bus/usb/001/024
crw-rw-rw- 1 root root 189, 23 Aug 19 20:55 /dev/bus/usb/001/024
root@proxmox:~# 

Dans la conf de mon lxc, j’ai rajouté les 2 lignes :

lxc.cgroup2.devices.allow: c 189:* rwm
lxc.mount.entry: /dev/bus/usb/001/024 dev/bus/usb/001/024 none bind,optional,create=file

reboot du container, puis :

jeedom:~# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 024: ID 1cf1:0030 Dresden Elektronik 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
jeedom:~# ls -l /dev/bus/usb/001/024
crw-rw-rw- 1 root root 189, 23 Aug 19 18:55 /dev/bus/usb/001/024
jeedom:~# 
jeedom:~# 
jeedom:~# ls -al /dev/serial/by-id/*
ls: cannot access '/dev/serial/by-id/*': No such file or directory
jeedom:~# 

image

Dans la config de zigbeelinker, il ne me propose même plus le port /dev/ttyACM1. Je commence à désespérer de migrer cette VM :slight_smile:
Je suis sur que c’est une broutille en plus…

Bon, j’ai testé pas mal de manips, pour finir par pomper ce que j’ai trouvé dans la conf d’un vieux container de test HA :

lxc.cgroup2.devices.allow: a
lxc.cap.drop:
lxc.cgroup2.devices.allow: c 188:* rwm
lxc.cgroup2.devices.allow: c 189:* rwm
lxc.mount.entry: /dev/serial/by-id  dev/serial/by-id  none bind,optional,create=dir
lxc.mount.entry: /dev/ttyUSB0       dev/ttyUSB0       none bind,optional,create=file
lxc.mount.entry: /dev/ttyACM0       dev/ttyACM0       none bind,optional,create=file
lxc.mount.entry: /dev/ttyACM1       dev/ttyACM1       none bind,optional,create=file

Et bien, ça fonctionne ! :slight_smile: J’aime pas trop résoudre mes soucis à l’arrache comme ça, mais j’ai passé trop de temps la dessus donc si ça marche, ça restera comme ça :wink:
Si ça peut aider quelqu’un …

1 « J'aime »