zigbee2MQTT Permission denied

Begonnen von RoccoNaut, 22 Juli 2019, 22:36:16

Vorheriges Thema - Nächstes Thema

RoccoNaut

Nabend zusammen,

ich hatte zigbee2MQTT schon mal am laufen und war echt zufrieden.
Dann wollte ich updaten und das ging in die Hose. Danach lief zigbee2MQTT nicht mehr und ich hatte kein funktionierendes Backup (lesson learned!)

Nun habe ich zigbee2MQTT komplett entfernt und neu aufgesetzt.
Es funktioniert aber nicht.

Ich bekomme immer diese Fehlermeldung im Log:


Jul 22 22:18:27 fhempi systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Jul 22 22:18:27 fhempi systemd[1]: zigbee2mqtt.service: Service hold-off time over, scheduling restart.
Jul 22 22:18:27 fhempi systemd[1]: Stopped zigbee2mqtt.
Jul 22 22:18:27 fhempi systemd[1]: Started zigbee2mqtt.
Jul 22 22:18:29 fhempi npm[920]: > zigbee2mqtt@1.4.0 start /opt/zigbee2mqtt
Jul 22 22:18:29 fhempi npm[920]: > node index.js
Jul 22 22:18:30 fhempi npm[920]:   zigbee2mqtt:info 2019-7-22 10:18:30 PM Logging to directory: '/opt/zigbee2mqtt/data/log/2019-07-22.22-18-30'
Jul 22 22:18:30 fhempi npm[920]:   zigbee2mqtt:info 2019-7-22 10:18:30 PM Starting zigbee2mqtt version 1.4.0 (commit #927c4db)
Jul 22 22:18:30 fhempi npm[920]:   zigbee2mqtt:info 2019-7-22 10:18:30 PM Starting zigbee-shepherd
Jul 22 22:18:30 fhempi npm[920]:   zigbee2mqtt:info 2019-7-22 10:18:30 PM Error while starting zigbee-shepherd, attempting to fix... (takes 60 seconds) (Error: Error: Permission denied, cannot open /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B001936687F-if00)
Jul 22 22:19:30 fhempi npm[920]:   zigbee2mqtt:info 2019-7-22 10:19:30 PM Starting zigbee-shepherd
Jul 22 22:19:31 fhempi npm[920]:   zigbee2mqtt:error 2019-7-22 10:19:31 PM Error while starting zigbee-shepherd! (Error: Error: Permission denied, cannot open /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B001936687F-if00)
Jul 22 22:19:31 fhempi npm[920]:   zigbee2mqtt:error 2019-7-22 10:19:31 PM Press the reset button on the stick (the one closest to the USB) and start again
Jul 22 22:19:31 fhempi npm[920]:   zigbee2mqtt:error 2019-7-22 10:19:31 PM Failed to start
Jul 22 22:19:31 fhempi npm[920]:         {"message":"Error: Permission denied, cannot open /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B001936687F-if00","stack":"Error: Error: Permission denied, cannot open /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B001936687F-if00"}
Jul 22 22:19:31 fhempi npm[920]:   zigbee2mqtt:error 2019-7-22 10:19:31 PM Exiting...
Jul 22 22:19:31 fhempi npm[920]: npm ERR! code ELIFECYCLE
Jul 22 22:19:31 fhempi npm[920]: npm ERR! errno 1
Jul 22 22:19:31 fhempi npm[920]: npm ERR! zigbee2mqtt@1.4.0 start: `node index.js`
Jul 22 22:19:31 fhempi npm[920]: npm ERR! Exit status 1
Jul 22 22:19:31 fhempi npm[920]: npm ERR!
Jul 22 22:19:31 fhempi npm[920]: npm ERR! Failed at the zigbee2mqtt@1.4.0 start script.
Jul 22 22:19:31 fhempi npm[920]: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
Jul 22 22:19:31 fhempi npm[920]: npm ERR! A complete log of this run can be found in:
Jul 22 22:19:31 fhempi npm[920]: npm ERR!     /home/sebi/.npm/_logs/2019-07-22T20_19_31_073Z-debug.log
Jul 22 22:19:31 fhempi systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Jul 22 22:19:31 fhempi systemd[1]: zigbee2mqtt.service: Unit entered failed state.
Jul 22 22:19:31 fhempi systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Jul 22 22:19:31 fhempi systemd[1]: zigbee2mqtt.service: Service hold-off time over, scheduling restart.
Jul 22 22:19:31 fhempi systemd[1]: Stopped zigbee2mqtt.
Jul 22 22:19:31 fhempi systemd[1]: Started zigbee2mqtt.
Jul 22 22:19:32 fhempi npm[956]: > zigbee2mqtt@1.4.0 start /opt/zigbee2mqtt
Jul 22 22:19:32 fhempi npm[956]: > node index.js
Jul 22 22:19:33 fhempi npm[956]:   zigbee2mqtt:info 2019-7-22 10:19:33 PM Logging to directory: '/opt/zigbee2mqtt/data/log/2019-07-22.22-19-33'
Jul 22 22:19:34 fhempi npm[956]:   zigbee2mqtt:info 2019-7-22 10:19:34 PM Starting zigbee2mqtt version 1.4.0 (commit #927c4db)
Jul 22 22:19:34 fhempi npm[956]:   zigbee2mqtt:info 2019-7-22 10:19:34 PM Starting zigbee-shepherd
Jul 22 22:19:34 fhempi npm[956]:   zigbee2mqtt:info 2019-7-22 10:19:34 PM Error while starting zigbee-shepherd, attempting to fix... (takes 60 seconds) (Error: Error: Permission denied, cannot open /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B001936687F-if00)


npm log:

0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'start' ]
2 info using npm@6.9.0
3 info using node@v10.16.0
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle zigbee2mqtt@1.4.0~prestart: zigbee2mqtt@1.4.0
6 info lifecycle zigbee2mqtt@1.4.0~start: zigbee2mqtt@1.4.0
7 verbose lifecycle zigbee2mqtt@1.4.0~start: unsafe-perm in lifecycle true
8 verbose lifecycle zigbee2mqtt@1.4.0~start: PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/opt/zigbee2mqtt/$
9 verbose lifecycle zigbee2mqtt@1.4.0~start: CWD: /opt/zigbee2mqtt
10 silly lifecycle zigbee2mqtt@1.4.0~start: Args: [ '-c', 'node index.js' ]
11 silly lifecycle zigbee2mqtt@1.4.0~start: Returned: code: 1  signal: null
12 info lifecycle zigbee2mqtt@1.4.0~start: Failed to exec start script
13 verbose stack Error: zigbee2mqtt@1.4.0 start: `node index.js`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
13 verbose stack     at EventEmitter.emit (events.js:198:13)
13 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:198:13)
13 verbose stack     at maybeClose (internal/child_process.js:982:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
14 verbose pkgid zigbee2mqtt@1.4.0
15 verbose cwd /opt/zigbee2mqtt
16 verbose Linux 4.19.57-v7+
17 verbose argv "/usr/bin/node" "/usr/bin/npm" "start"
18 verbose node v10.16.0
19 verbose npm  v6.9.0
20 error code ELIFECYCLE
21 error errno 1
22 error zigbee2mqtt@1.4.0 start: `node index.js`
22 error Exit status 1
23 error Failed at the zigbee2mqtt@1.4.0 start script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]


Ich erkenne da jetzt nur eine Error-Meldung in den Berechtigungen.
Berechtigungen sind dort folgende gesetzt:
lrwxrwxrwx 1 root root 13 Jul 22 21:24 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B001936687F-if00 -> ../../ttyACM1


Welche Berechtigungen werden denn benötigt von zigbee2mqtt?
Ich werde immer fitter was Linux angeht, aber bei den Berechtigungen hapert es bei mir noch.
Ich hoffe hier kann mir jemand auf die Sprünge helfen.

Gruß
Sebastian


mark79

Hi, versuch mal die beiden Commands auszuführen, damit sollte fhempi Zugriff auf das Device bekommen:

sudo addgroup fhempi dialout
sudo addgroup fhempi tty



Viele Grüße
Mark
Rock64 4GB mit Debian Strech, FHEM im LXC, Sonoff Switches/Touch, HM Thermostate, HMUART/Zigbee2MQTT@MapleCUN, ESP RGBWW Wifi Controller, ESP8266 Door Sensor/Briefkastenwächter, BT CSL Stick, BT iTags, Alexa, FireTV, RPi2 mit Kodi, Xiaomi Vacuum v1/Smarthome Komponenten

RoccoNaut

Hi,

fhempi ist kein User. Das ist der Netzwerkname des Raspberry Pi auf dem FHEM läuft.

Der User FHEM ist in der Gruppe Dialout und auch in tty. Sonst würde auch der Z-Wave Stick nicht funktionieren, oder?

Beta-User

Welchen user hast du denn in der zigbee2mqtt.serice eingetragen?

(https://www.zigbee2mqtt.io/getting_started/running_zigbee2mqtt.html)

Dieser user muß zu dialout (müßte reichen) gehören... (Das hat mit fhem nichts zu tun, es ist ein anderer Dienst  ;) )
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

RoccoNaut

Das prüfe ich dann gleich nach Feierabend direkt.

Ist es vom prinzip egal welchen User ich da nehme, solange er in dieser Gruppe ist?

Beta-User

Jein. Der User muß halt dann auch noch die Berechtigung haben, ins "richtige Verzeichnis" zu schreiben bzw. dort zu lesen (typischerweise /opt/zigbee2mqtt und darunter).

(Da fällt mir auf, dass es suboptimal ist, wie das in zigbee2mqtt heute gelöst ist; man sollte eigentlich einen user nehmen, der NICHT sudo darf... Ich glaube, ich beseitige dieses Thema gelegentlich an der Wurzel und beschaffe mir mal einen Conbee II.)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

RoccoNaut

Rückinfo: Hat irgendwie nicht geklappt. Habe noch mal komplett bei 0 angefangen. Nun läuft zumindest der Dienst wieder.

Konnte einen neuen Xiaomi Door Sensor pairen. Aber einen weiteren neuen Door Sensor und 2 Osram Smart Plugs (liefen in der vorherigen Installation 1a) bekomme ich nicht gepairt. Es tut sich einfach nix.