NEWS
Neuer Node-Red Adapter (0.13.4) installiert keine Node Serial mehr
-
Hallo,
Bluefox hat den Node-Red Adapter auf Version 0.13.4 geändert.
Soweit super. Benutze ich seit vielen Wochen.
Beim installieren aus der Admin-Oberfläche fehlt aber die Standard-Node "Serial".
Nachinstallation mit
cd /opt/iobroker/node_modules/iobroker.node-red iobroker stop node-red.0 npm cache clean npm i --unsafe-perm node-red iobroker start node-red.0
Fehlt vielleicht der –unsafe-perm Parameter im Installationsscript?
Grüße
Thomas
-
Kann es sein, dass es ggf. Probleme beim RasPi3 mit Serial gibt?
Gruß
Rainer
-
Hallo Thomas,
Nein das Problem mit der Installation ist bei mir auch aus einem pi2 aufgetreten. Bestimmte Teile von node-red werden nur dann korrekt installiert, wenn die Installation mit dem Parameter –unsafe-perm ausgeführt wird, weil nur dann da kompilieren der mit nan an C-Libraries gebundenen module mit den aktuellen Benutzer und nicht mit user nobody vorgenommen werden. Gerade bei den libs für den serial port hat dieser nämlich keine Berechtigung dafür.
Der Parameter steht so auch in der installationsanleitung zu node-red. Im npm-Paket von node-red ist er aber nicht per default gesetzt.
Ich hab noch nicht ausprobiert, ob es reichen würde, diese Option im npm-Pakets des Adapters zu setzen.
Zurzeit hilft als einfacher Workarround, node-red im Verzeichnis /opt/iobroker/node-modules/iobroker.node-red mit
npm install node-red@0.13.4 --unsafe-perm
Drüber zu installieren.
Für den serialport gibt es übrigens eine Einschränkung bei nodered, dass dieser nur noch mit neueren node.js Versionen kompatibel ist. Bei alten Versionen muss man manuell eine alte Version installieren.
Gesendet von meinem SM-G900F mit Tapatalk
-
Ja genau. Das wollte ich nur festhalten.
Pi2 oder PI3 ist egal. Ich benutze aktuell Jessie Lite.
Tritt der Fehler auch bei der normalen Raspian Jessie Installation auf?
Ich mach übrigends sicheheitshalber noch ein````
npm cache clearDie Einschränkung in Bezug auf node.js gilt für Versionen < 0.12.6. Ab node.js v0.12.6 oder höher funktioniert dies. Ich habe aktuell aber v4.4.3\. Damit laufen alle meine Nodes nun sauber. Das war vorher nicht so.
-
Ich hab jetzt mal in meinen Fork des Adapters die Option in die package.json eingefügt und den Adapter über die meine bestehende Installation installiert.
Dies funktioniert bei mir jetzt ohne –unsafe-perm, deswegen hab ich einen pull request auf github eingestellt.
Update:
Ich hab den pull Request erstmal zurückgezogen, weil die Option nicht durchgegeben wird. Scheint wohl nicht so einfach zu sein, weil die Option in der package.json aus Sicherheitsgründen nur für das eigene Package wirkt, nicht aber auf die abhängigen.
Die einzige Möglichkeit, die ich bisher gefunden habe, ist die Installation nicht automatisch durchführen zu lassen sondern über ein Skript, welches dann das npm Kommando mit der Option ausführt.
-
Hab auf 1.12.0 aktualisiert und nun folgende Warnungen im Log:
host.Beelink 2019-10-08 07:51:38.856 warn Error from InMemDB: Error: config NOT SUPPORTED node-red.0 2019-10-08 07:51:38.834 warn (32412) 8 Oct 07:51:38 - [warn] Projekte inaktiviert: editorTheme.projects.enabled=false node-red.0 2019-10-08 07:51:36.674 info (29313) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason node-red.0 2019-10-08 07:51:34.832 info (32412) Starting node-red: --max-old-space-size=128 /opt/iobroker/node_modules/node-red/red.js -v --settings /opt/iobroker/iobroker-data/node-red/settings.js node-red.0 2019-10-08 07:51:34.057 info (32412) starting. Version 1.12.0 in /opt/iobroker/node_modules/iobroker.node-red, node: v10.16.3 host.Beelink 2019-10-08 07:51:33.265 warn Error from InMemDB: Error: config NOT SUPPORTED node-red.0 2019-10-08 07:51:32.672 warn (29313) Got terminate signal. Checking desired PID: 32412 vs own PID 29313 node-red.0 2019-10-08 07:51:32.671 warn (29313) Got terminate signal. Checking desired PID: 0 vs own PID 29313 host.Beelink 2019-10-08 07:51:32.669 info instance system.adapter.node-red.0 started with pid 32412 host.Beelink 2019-10-08 07:51:30.178 info instance system.adapter.node-red.0 terminated with code 156 (156) node-red.0 2019-10-08 07:51:30.162 info (29205) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason host.Beelink 2019-10-08 07:51:30.154 info stopInstance timeout "1000 system.adapter.node-red.0 killing pid 29205 node-red.0 2019-10-08 07:51:29.150 info (29205) kill node-red task
Muss ich hier aktiv werden?