NEWS
[Gelöst] ioBroker node.js weicht von Kommandozeile ab
-
Hi !
Ich wolle soeben mal eine Update Runde fahren, weil ich bei den Adapter angezeigt bekomme, dass js.controller >= 3.3.22 erwartet wird.
Dabei habe ich gesehen, dass in der Übersichtsseite von iobroker (http://localhost:8081/) Node.js: v8.12.0 angezeigt wird.
Beim Check in der Kommandozeile kommt:pi@ioBroker-RasPi:~$ node -v v12.22.9 pi@ioBroker-RasPi:~$ nodejs -v v12.22.9
Nun habe ich wie hier empfohlen bereits geprüft, dass alle drei Elemente (nodejs, node oder npm) auf /usr/bin zeigen:
pi@ioBroker-RasPi:~$ uname -m && which 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 v12.22.9 v12.22.9 6.14.15 pi /home/pi OK:1 http://raspbian.raspberrypi.org/raspbian stretch InRelease OK:2 http://archive.raspberrypi.org/debian stretch InRelease OK:3 https://deb.nodesource.com/node_12.x stretch InRelease Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig Aktualisierung für 97 Pakete verfügbar. Führen Sie »apt list --upgradable« aus, um sie anzuzeigen. nodejs: Installiert: 12.22.9-1nodesource1 Installationskandidat: 12.22.12-1nodesource1 Versionstabelle: 12.22.12-1nodesource1 500 500 https://deb.nodesource.com/node_12.x stretch/main armhf Packages *** 12.22.9-1nodesource1 100 100 /var/lib/dpkg/status 8.11.1~dfsg-2~bpo9+1 500 500 http://archive.raspberrypi.org/debian stretch/main armhf Packages 4.8.2~dfsg-1 500 500 http://raspbian.raspberrypi.org/raspbian stretch/main armhf Packages
Wie kann ich das also geradeziehen sodass nodejs vom iobroker und Kommandozeile identisch sind?
-
Node richtig installieren:
https://forum.iobroker.net/topic/35090/howto-nodejs-installation-und-upgrades-unter-debian -
Die nodesource.list anpassen. Steht in dem verlinkten How to drin.
Aber dein Betriebssystem ist tot. Installier da was lebendiges.
-
@lethuer sagte in ioBroker node.js weicht von Kommandozeile ab:
stretch
und dann kam Buster... und dann kam Bullseye ....
Strech ist quasi wie wenn Du versuchst eine Kasette in einen CD-Player zu stopfen -
@djmarc75 oh je da scheine ich richtig hinterher zu sein... das passiert eben bei "never touch a running system".
Gibt es einen weg von stretch auf bullseye zu kommen und gibt es dazu eine gescheite anleitung ? -
@lethuer in der Theorie, könntest du schrittweise von einer Version zur nächsten updaten, das kann funktionieren, muss aber nicht unbedingt.
die bessere Wahl wäre, System direkt neu aufsetzen und dann ein backup zurückspielen. macht zumindest was iobroker betrifft am wenigsten Probleme und du hast ein sauberes System. -
@lethuer sagte in ioBroker node.js weicht von Kommandozeile ab:
das passiert eben bei "never touch a running system".
Da passieren auch noch andere Dinge...
Deswegen: GAAAAANZ doofe Taktik.Grundsätzlich geht das so:
https://forum.iobroker.net/topic/47213/upgrade-von-debian-10-buster-auf-11-bullseye
Müsste man halt zuerst für von Stretch zu Buster umsetzten und dann von Buster auf Bullseye. Vermutlich ist eine Neuinstallation da aber schmerzfreier als zwei Releases zu springen.
Kurz: @crunchip hat Recht.
-
@thomas-braun sagte in ioBroker node.js weicht von Kommandozeile ab:
Die nodesource.list anpassen. Steht in dem verlinkten How to drin.
bin die liste (Nodejs Installation) eben durchgegangen.
jetzt hab ich wohl node v16.16.0 drauf, zumindest das ist up to date.@crunchip sagte in ioBroker node.js weicht von Kommandozeile ab:
@lethuer in der Theorie, könntest du schrittweise von einer Version zur nächsten updaten, das kann funktionieren, muss aber nicht unbedingt.
die bessere Wahl wäre, System direkt neu aufsetzen und dann ein backup zurückspielen. macht zumindest was iobroker betrifft am wenigsten Probleme und du hast ein sauberes System.Bei dem komplett neu aufgesetzten System hab ich ein wenig angst...
hab gerade neben iobroker noch octoprint an den start gebracht. -
Willst du das jetzt aussitzen? Unkomplizierter wird es dadurch nicht.
Das Release ist tot, das wird nicht wiederbelebt.
Die octoprint.config kann man bestimmt auch sichern. -
@lethuer dann sichere dir die Karte und hebst mal dein System auf buster
-
@thomas-braun gut gut ich hab ein backup davon, hoffentlich klappt das das wiederherzustellen.
jetzt wollte ich noch schnell die adapter alle auf den letzten stand bringen und dann nochmal ein backup von iobroker fahren, allerdings wird noch der js-controller >= 3.3.0 gefordert.diese anleitung ging schief
iobroker stop iobroker update iobroker upgrade self iobroker start
pi@ioBroker-RasPi:~$ iobroker upgrade self Update js-controller from @3.1.6 to @4.0.23 NPM version: 8.11.0 npm install iobroker.js-controller@4.0.23 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call) Objects 127.0.0.1:51766 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.features.useSets"] Objects 127.0.0.1:51766 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.protocolVersion"] Objects 127.0.0.1:51766 Error from InMemDB: Error: scan NOT SUPPORTED npm ERR! code 1 npm ERR! path /opt/iobroker/node_modules/iobroker.js-controller npm ERR! command failed npm ERR! command sh -c node iobroker.js setup first npm ERR! /opt/iobroker/node_modules/standard-as-callback/built/index.js:6 npm ERR! throw e; npm ERR! ^ npm ERR! npm ERR! ReplyError: Error scan NOT SUPPORTED npm ERR! at parseError (/opt/iobroker/node_modules/redis-parser/lib/parser.js:179:12) npm ERR! at parseType (/opt/iobroker/node_modules/redis-parser/lib/parser.js:302:14) npm ERR! Emitted 'error' event on ScanStream instance at: npm ERR! at /opt/iobroker/node_modules/ioredis/built/ScanStream.js:38:22 npm ERR! at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:12:23) npm ERR! at /opt/iobroker/node_modules/standard-as-callback/built/index.js:33:51 npm ERR! at processTicksAndRejections (node:internal/process/task_queues:96:5) { npm ERR! command: { npm ERR! name: 'scan', npm ERR! args: [ '0', 'MATCH', 'cfg.o.system.host.*', 'COUNT', '250' ] npm ERR! } npm ERR! } npm ERR! A complete log of this run can be found in: npm ERR! /home/pi/.npm/_logs/2022-07-13T23_09_10_328Z-debug-0.log Starting node restart.js
ein tipp auch dazu ?
-
@lethuer sagte in ioBroker node.js weicht von Kommandozeile ab:
wollte ich noch schnell die adapter alle
Schnell geht da schon mal gar nix, das macht man in aller Ruhe.
Und je nachdem, gibt es in bestimmten Konstellationen zu beachten, in welcher Reihenfolge man die Adapter updatet.Der Sprung von 3.1.6 auf 4.0.23 ist auch recht groß, meine mich zu erinnern, besser von 3.3 aus upgraden, steht allerdings im dazugehörigen Thread.
-
@crunchip Vielleicht eine blöde frage aber wie komme ich denn auf 3.3.x ?
mitiobroker upgrade self
versucht er automatisch direkt auf 4.0.23 zu gehen...
-
Schau hier rein:
https://forum.iobroker.net/topic/52886/js-controller-4-0-x-jetzt-für-alle-user-im-stableHatte dir aber auch @crunchip schon an's Herz gelegt.
-
@lethuer sagte in ioBroker node.js weicht von Kommandozeile ab:
aber wie komme ich denn auf 3.3.x ?
mit iobroker upgrade self@3.3.x
-
@homoran sagte in ioBroker node.js weicht von Kommandozeile ab:
@lethuer sagte in ioBroker node.js weicht von Kommandozeile ab:
aber wie komme ich denn auf 3.3.x ?
mit iobroker upgrade self@3.3.x
Danke !
-
@thomas-braun sagte in ioBroker node.js weicht von Kommandozeile ab:
Aber dein Betriebssystem ist tot. Installier da was lebendiges.
Hi !
Heute habe ich endlich mal frisch aufgesetzt (https://www.youtube.com/watch?v=xb-S8pWtwu4).
Nun habe ich also das aktuelle Bullseye OS drauf.
ioBroker startete auch und ich hätte neu einrichten können.Ich wollte also das zuvor erstellte Backup von GDrive über BackitUp einspielen, was auch gut aussah.
Nun ist die ioBroker Oberfläche aber nicht erreichbar.
Einen Neustart habe ich bereits versucht.pi@raspberrypi:~ $ sudo reboot
Aktuell kommt das hier:
pi@raspberrypi:~ $ iobroker status Cannot read system.config: null (OK when migrating or restoring) iobroker is running on this host. Objects type: file States type: redis
-
Ach, aus dem Video kommt also die Unsitte iobroker@iobroker auszuwählen. Interessant...
-
@thomas-braun sagte in ioBroker node.js weicht von Kommandozeile ab:
Ach, aus dem Video kommt also die Unsitte iobroker@iobroker auszuwählen. Interessant...
Hab ich ja nicht getan
Und die ioBroker Installation hat erstmal geklappt, nur ist dann irgendwas bei der Backup Wiederherstellung schief gegangen… -