NEWS
Node Red startet nicht nach Raspberry OS update
-
Hallo in die Runde,
ich habe ein Problem mit Node-Red:
Entwickle schon seit Wochen ein Flow in Node-Red auf einem meiner IOB-Slaves ( RasPi3B+)mit dem ich einen einen RS485 USB Adapter auf eine ModBus Anwendung abstimme. Habs nur üpig getestet und es hat alles einwandfrei funktioniert.
Bevor ich den RasPi3 runtergefahren habe, damit ich in in den Keller bringe ( dort soll das System laufen) habe ich noch ein Update vom Betriebsystem gemacht und den RasPi runtergefahren und im Keller wieder aufgebaut - ist alles im gleichen Netzwerk.
Seither startet der Red-Noed Adapter nicht mehr und bricht mit exit "exited with 1" laufend ab und schreibt immer dasselbe ins LOG.
Ansonsten läuft alles wie bisher, der Slave ist erreichbar und auch andere Instanzen drauf laufen ganz normal.Ich habe leider keine Idee wie ich das Thema angehen kann, und hoffe es hat wer eine entscheidende Idee.
Hier noch ein paar Eckdaten des Slaves auf dem die Nede-Red Instanz läuft und der Log.
System: Raspberry OS Bullseye Desktop 32bit
Hardware RasPi3B+
Node Red Version v3.3.1
js-controller 3.3.22IoBroker Master RasPi4B 4GB
Alles läuft auf Redis2022-09-01 18:43:27.221 - info: node-red.0 (1480) 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 2022-09-01 18:43:28.158 - warn: node-red.0 (1480) internal/modules/cjs/loader.js:905 throw err; ^ Error: Cannot find module '@babel/runtime/helpers/typeof' Require stack: - /opt/iobroker/node_modules/i18next/dist/cjs/i18next.js - /opt/iobroker/node_modules/@node-red/util/lib/i18n.js - /opt/iobroker/node_modules/@node-red/util/lib/log.js - /opt/iobroker/node_modules/@node-red/util/index.js - /opt/iobroker/node_modules/@node-red/runtime/lib/api/comms.js - /opt/iobroker/node_modules/@node-red/runtime/lib/api/index.js - /opt/iobroker/node_modules/@node-red/runtime/lib/index.js - /opt/iobroker/node_modules/node-red/lib/red.js - /opt/iobroker/node_modules/node-red/red.js at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15) at Function.Module._load (internal/modules/cjs/loader.js:746:27) at Module.require (internal/modules/cjs/loader.js:974:19) at require (internal/modules/cjs/helpers.js:101:18) at Object. (/opt/iobroker/node_modules/i18next/dist/cjs/i18next.js:3:15) at Module._compile (internal/modules/cjs/loader.js:1085:14) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10) at Module.load (internal/modules/cjs/loader.js:950:32) at Function.Module._load (internal/modules/cjs/loader.js:790:12) at Module.require (internal/modules/cjs/loader.js:974:19) { code: 'MODULE_NOT_FOUND', requireStack: [ '/opt/iobroker/node_modules/i18next/dist/cjs/i18next.js', '/opt/iobroker/node_modules/@node-red/util/lib/i18n.js', '/opt/iobroker/node_modules/@node-red/util/lib/log.js', '/opt/iobroker/node_modules/@node-red/util/index.js', '/opt/iobroker/node_modules/@node-red/runtime/lib/api/comms.js', '/opt/iobroker/node_modules/@node-red/runtime/lib/api/index.js', '/opt/iobroker/node_modules/@node-red/runtime/lib/index.js', '/opt/iobroker/node_modules/node-red/lib/red.js', '/opt/iobroker/node_modules/node-red/red.js' ] } 2022-09-01 18:43:28.167 - info: node-red.0 (1480) node-red exited with 1
vG Etze
-
@etzeste13
Schon allein JS mit 3.3.22 klingt komisch...zeig mal
sudo ln -s /usr/bin/node /usr/bin/nodejs uname -m && type -P nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
-
@djmarc75 said in Node Red startet nicht nach Raspberry OS update:
uname -m && type -P nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
pi@RasPi3B3:~ $ sudo ln -s /usr/bin/node /usr/bin/nodejs ln: die symbolische Verknüpfung '/usr/bin/nodejs' konnte nicht angelegt werden: Die Datei existiert bereits pi@RasPi3B3:~ $ ^C pi@RasPi3B3:~ $ uname -m && type -P nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm v14.20.0 v14.20.0 6.14.17 pi /home/pi
-
@etzeste13 und jetzt die ganze Ausgabe bitte !!!
-
@djmarc75 sorry, war beim ersten versuch nicht mehr...
pi@RasPi3B3:~ $ sudo ln -s /usr/bin/node /usr/bin/nodejs uname -m && type -P nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs ln: die symbolische Verknüpfung '/usr/bin/nodejs' konnte nicht angelegt werden: Die Datei existiert bereits armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm v14.20.0 v14.20.0 6.14.17 pi /home/pi OK:1 http://raspbian.raspberrypi.org/raspbian bullseye InRelease OK:2 http://archive.raspberrypi.org/debian bullseye InRelease OK:3 https://deb.nodesource.com/node_14.x bullseye InRelease Paketlisten werden gelesen… Fertig Abhängigkeitsbaum wird aufgebaut… Fertig Statusinformationen werden eingelesen… Fertig Alle Pakete sind aktuell. nodejs: Installiert: 14.20.0-deb-1nodesource1 Installationskandidat: 14.20.0-deb-1nodesource1 Versionstabelle: *** 14.20.0-deb-1nodesource1 500 500 https://deb.nodesource.com/node_14.x bullseye/main armhf Packages 100 /var/lib/dpkg/status 12.22.12~dfsg-1~deb11u1 500 500 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages pi@RasPi3B3:~ $
-
Ich habe nun versucht mittels löschen des Node-Red Adapters und upgrade des Slaves auf letztstand das Problem zu lösen.
Leider ist mir das upbrade des js-Controllers auch abgebrochen mit folgenden fehlern...
Hat hier wer eine Idee was zu machen ist?
pi@RasPi3B3:~ $ iobroker upgrade self Update js-controller from @3.3.22 to @4.0.23 NPM version: 8.15.0 npm install iobroker.js-controller@4.0.23 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call) npm ERR! code ENOTDIR npm ERR! syscall stat npm ERR! path /home/iobroker/.npm/_cacache/content-v2/sha512/f5/33/c11866a4e271df199b0f068866f405a0e8da13ed04c27a14b704824006c97265bcf17d5efc40cd98ebe8bbe3538f64869f1406a2884321e4ec88ac93e0b6 npm ERR! errno -20 npm ERR! ENOTDIR: not a directory, stat '/home/iobroker/.npm/_cacache/content-v2/sha512/f5/33/c11866a4e271df199b0f068866f405a0e8da13ed04c27a14b704824006c97265bcf17d5efc40cd98ebe8bbe3538f64869f1406a2884321e4ec88ac93e0b6' npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2022-09-01T18_40_23_708Z-debug-0.log host.RasPi3B3 Cannot install iobroker.js-controller@4.0.23: 236 pi@RasPi3B3:~ $
vG Etze
-
@etzeste13 Ich würde an Deiner Stelle - aber ich muss dazu sagen, dass meine Vorgehensweise hier nicht alle teilen.
- Mal auf die aktuelle NodeJS Version aktualisieren (ich mach das über das Anpassen der nodesource.list)
- die package.json anzupassen
- das gesamte node_modules Verzeichnis löschen und neu aufbauen
Vorher würde ich halt ein Image von der Karte sichern - aber bei mir hat das Aufräumen Wunder bewirkt und der ganze alte Schmu ist weg.
-
ich befürchte dazu fehlt mir das Detalwissen diese Datein alle editieren... ich wüsste nicht was ich da rausschmeisen sollte bzw. was stehen lassen...
-
@etzeste13 Also wenn Du ein Image hast und wieder auf den jetzigen Stand zurückkehren kannst - dann helfe ich Dir gerne.
-
@mickym vielen Dank für das Angebot... ich fürchte fast, dass das aktuell nicht mehr helfen wird... in der zwischenzeit startet der iobroker am slave auch nicht mehr durch....
wahrscheinlich wird es am besten sein, wenn ich den slave komplett neu aufbaue... die wichtigen states und daten hoffe ich sind noch am Master verfügbar.
den mir wichtigen flow habe ich auch in form der flows.json.... reicht das zum wiederherstellen? -
@etzeste13 NA gut - dann machen wir das Zusammen - bevor Du neu aufbaust.
Wenn eh nichts mehr geht, kann ich ja nichts kaputt machen.
-
@mickym OK, wie fangen wir an
-
@etzeste13 Dein iob ist aus?
iob stop
und dann nochmal die beiden berühmten Zeilen ausführen.
sudo ln -s /usr/bin/node /usr/bin/nodejs uname -m && type -P nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
-
@mickym said in Node Red startet nicht nach Raspberry OS update:
sudo ln -s /usr/bin/node /usr/bin/nodejs
pi@RasPi3B3:~ $ sudo ln -s /usr/bin/node /usr/bin/nodejs uname -m && type -P nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs ln: die symbolische Verknüpfung '/usr/bin/nodejs' konnte nicht angelegt werden: Die Datei existiert bereits armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm v16.17.0 v16.17.0 8.15.0 pi /home/pi OK:1 http://raspbian.raspberrypi.org/raspbian bullseye InRelease OK:2 http://archive.raspberrypi.org/debian bullseye InRelease OK:3 https://deb.nodesource.com/node_16.x bullseye InRelease Paketlisten werden gelesen… Fertig Abhängigkeitsbaum wird aufgebaut… Fertig Statusinformationen werden eingelesen… Fertig Alle Pakete sind aktuell. nodejs: Installiert: 16.17.0-deb-1nodesource1 Installationskandidat: 16.17.0-deb-1nodesource1 Versionstabelle: *** 16.17.0-deb-1nodesource1 500 500 https://deb.nodesource.com/node_16.x bullseye/main armhf Packages 100 /var/lib/dpkg/status 12.22.12~dfsg-1~deb11u1 500 500 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages pi@RasPi3B3:~ $
-
@etzeste13 Na das schau doch gut aus.
Nun wechselst Du in das Verzeichnis /opt/iobroker
cd /opt/iobroker
dann zeig mal den Inhalt:
ls -la
-
@mickym said in Node Red startet nicht nach Raspberry OS update:
ls -la
pi@RasPi3B3:/opt/iobroker $ ls -la insgesamt 368 drwxrwxr-x+ 6 iobroker iobroker 4096 1. Sep 21:35 . drwxr-xr-x 4 root root 4096 7. Feb 2022 .. drwxrwxr-x+ 2 iobroker iobroker 4096 7. Feb 2022 backups -rwxrwxrwx+ 1 iobroker iobroker 341 1. Sep 21:35 INSTALLER_INFO.txt lrwxrwxrwx 1 iobroker iobroker 22 1. Sep 21:35 iob -> /opt/iobroker/iobroker -rwxr-xr-x+ 1 iobroker iobroker 309 1. Sep 21:35 iobroker drwxrwxr-x+ 5 iobroker iobroker 4096 7. Feb 2022 iobroker-data drwxrwxr-x+ 2 iobroker iobroker 4096 1. Sep 20:39 log drwxrwxr-x+ 573 iobroker iobroker 20480 1. Sep 20:44 node_modules -rw-rwxr--+ 1 iobroker iobroker 155 1. Sep 21:34 .npmrc -rw-rwxr--+ 1 iobroker iobroker 453 28. Aug 17:15 package.json -rw-rwxr--+ 1 iobroker iobroker 309184 28. Aug 17:15 package-lock.json -rw-rwxr--+ 1 iobroker iobroker 5693 7. Feb 2022 reinstall.js pi@RasPi3B3:/opt/iobroker $
-
-
@mickym said in Node Red startet nicht nach Raspberry OS update:
npm list
alles klar...
pi@RasPi3B3:/opt/iobroker $ npm list iobroker.inst@3.0.0 /opt/iobroker ├── UNMET DEPENDENCY iobroker.admin@^6.2.17 ├── UNMET DEPENDENCY iobroker.backitup@^2.4.10 ├── UNMET DEPENDENCY iobroker.discovery@^3.0.5 ├── UNMET DEPENDENCY iobroker.info@^1.9.19 ├── UNMET DEPENDENCY iobroker.js-controller@stable ├── UNMET DEPENDENCY iobroker.modbus@^5.0.4 ├── UNMET DEPENDENCY iobroker.node-red@^3.3.1 └── UNMET DEPENDENCY iobroker.rpi2@^1.3.2 npm ERR! code ELSPROBLEMS npm ERR! missing: iobroker.admin@^6.2.17, required by iobroker.inst@3.0.0 npm ERR! missing: iobroker.backitup@^2.4.10, required by iobroker.inst@3.0.0 npm ERR! missing: iobroker.discovery@^3.0.5, required by iobroker.inst@3.0.0 npm ERR! missing: iobroker.info@^1.9.19, required by iobroker.inst@3.0.0 npm ERR! missing: iobroker.js-controller@stable, required by iobroker.inst@3.0.0 npm ERR! missing: iobroker.modbus@^5.0.4, required by iobroker.inst@3.0.0 npm ERR! missing: iobroker.node-red@^3.3.1, required by iobroker.inst@3.0.0 npm ERR! missing: iobroker.rpi2@^1.3.2, required by iobroker.inst@3.0.0 npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2022-09-01T19_54_06_767Z-debug-0.log pi@RasPi3B3:/opt/iobroker $
-
@etzeste13 OK - dann machen wir mal.
- Wie gesagt Dein System ist eh kaputt. Alles in /opt/iobroker durchführen.
Jetzt löschen wir mal:
sudo rm package-lock.json
sudo rm -rf node_modules
dann mit ls-la wieder Verzeichnis zeigen.
-