NEWS
[How-to] Node.js für ioBroker richtig updaten
-
@apollon77 @Thomas Braun
So ich habe jetzt nodejs aktualisiert auf 14. und nun wollte ich den js Controller aktualisieren. Aber irgendwie kommen fehler. Was muss ich jetzt machen.-db (2.7.6.1-2) werden verarbeitet ... pi@Media04:~ $ node -v v14.19.0 pi@Media04:~ $ nodejs -v v14.19.0 pi@Media04:~ $ npm-v bash: npm-v: Kommando nicht gefunden. pi@Media04:~ $ npm -v 6.14.16
iobroker upgrade self Update js-controller from @2.2.9 to @3.3.22 NPM version: 6.14.16 npm install iobroker.js-controller@3.3.22 --unsafe-perm --loglevel error --prefix "/opt/iobroker" (System call) npm ERR! code ELIFECYCLE npm ERR! errno 22 npm ERR! iobroker.js-controller@3.3.22 install: `node iobroker.js setup first` npm ERR! Exit status 22 npm ERR! npm ERR! Failed at the iobroker.js-controller@3.3.22 install script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2022-02-08T09_11_26_083Z-debug.log host.Media04 Cannot install iobroker.js-controller@3.3.22: 22
-
Was gibt
which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
zurück?
-
pi@Media04:~ $ which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs /usr/bin/nodejs /usr/bin/node /usr/bin/npm v14.19.0 v14.19.0 6.14.16 pi /home/pi OK:1 http://raspbian.raspberrypi.org/raspbian stretch InRelease OK:2 http://archive.raspberrypi.org/debian stretch InRelease OK:3 https://linux.teamviewer.com/deb stable InRelease OK:4 https://deb.nodesource.com/node_14.x stretch InRelease Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig Aktualisierung für 4 Pakete verfügbar. Führen Sie »apt list --upgradable« aus, um sie anzuzeigen. nodejs: Installiert: 14.19.0-1nodesource1 Installationskandidat: 14.19.0-1nodesource1 Versionstabelle: *** 14.19.0-1nodesource1 500 500 https://deb.nodesource.com/node_14.x stretch/main armhf Packages 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 pi@Media04:~ $
-
stretch ist EOL, spring auf was lebendes.
Und Teamviewer hat auf einem Server auch nix verloren. -
@thomas-braun Ok dann deinstalliere ich Team Viewer. Ist per SSH besser.
Und was könnte ich nun gegen die Fehlermeldung machen.Ich habe jetzt mal den befehl upgradable gemacht weil es im Text stand. Und da kam das raus.
pi@Media04:~ $ apt list --upgradable Auflistung... Fertig python-gpiozero/oldoldstable 1.5.0 all [aktualisierbar von: 1.4.1] python3-gpiozero/oldoldstable 1.5.0 all [aktualisierbar von: 1.4.1] python3-thonny/oldoldstable 3.1.0-1+rpt2 all [aktualisierbar von: 3.0.8-1+rpt1] teamviewer-host/stable 15.26.4 armhf [aktualisierbar von: 15.13.6] pi@Media04:~ $
-
@thomas-braun bei den Befehl iobroker update kommt jetzt das hier.
iobroker update internal/modules/cjs/loader.js:905 throw err; ^ Error: Cannot find module '/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js' at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15) at Function.Module._load (internal/modules/cjs/loader.js:746:27) at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:75:12) at internal/main/run_main_module.js:17:47 { code: 'MODULE_NOT_FOUND', requireStack: [] } pi@Media04:~ $
-
Ich glaube es ist besser wenn du bullseye neu installierst und danach das backup einspielst.
Habe ich auch so gemacht um von strecht auf bullseye zukommen. Ist die sauberste Lösung und lange dauert das auch nicht…
-
@saeft_2003 Das wäre eine Idee. Ich habe aber im Hintergrund noch etwas für die 433mhz Steckdosen laufen. Bei den Update auf nodejs kam keine Fehlermeldungen.
-
@saeft_2003 Ich installiere es nun neu. Dann bin ich auf den neusten Stand.
-
@basti97 In fact die Debian System Version ist effektiv egsal und so ... alles in ordnung (Also ja kann/sollte man angehen, aber hat mit dem Fehler nichts zu tun). Der Fehler hier bedeutet das er keine verbindung zur Datenbank herstellen kann.
Der Sprung von der 2.x auf die 3.x ist schonmal interessant. Ich würde versuchen zuerst manuell auf die 3.1.6 vom Controller zu gehen via (im iobroker Verzeichnis)
npm install iobroker.js-controller@3.1.6 --production
. Danach direkt auf die 3.3.22.Du kannst versuchen einmal mit dem NPM Befehl direkt auf die 3.3.22 zu gehen aber wäre nur interessant um die echte Fehlermeldung zu sehen
-
@apollon77 Danke für deine Hilfe. Ich werde in Zukunft nicht mehr so große Sprünge machen sondern gleich updaten. In der zwischen Zeit habe ich den Slave Rpi komplett neu gemacht da nur 4 Adapter darauf liefen. Das einzige was noch nicht läuft ist der Zigbee Adapter. Alle anderen wie Rpi- Adapter, Radar2, Javascript funktionieren wieder.
-
@basti97 Was hat der zigbee für ein Problem?
-
@apollon77 das was bestimmt immer ist wenn man node update macht..
serialport muss neu generiert werden
und dann der zigbee adapter -
@arteck maybe. Dann controller 4 nehmen der kann das automatisch
-
@apollon77 Ich habe den JS Controller 3.3.22 und zwar will er sich nicht verbinden. Meine Config Datei die ich noch hatte ist zu alt.
Bei Com muss ich ja den link bzw den Serielport angeben.Das hier habe ich in der Konsole eingegeben.
insgesamt 0 drwxr-xr-x 2 root root 60 9. Feb 20:23 . drwxr-xr-x 4 root root 80 9. Feb 20:23 .. lrwxrwxrwx 1 root root 13 9. Feb 20:23 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B00193B12F3-if00 -> ../../ttyACM0
Und da müsste zum Schluss der seriel Port so hier aussehen oder?
/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B00193B12F3-if00
oder liege ich falsch?
Zu mindest habe ich es mir so aufgeschrieben. -
@basti97 Sieht sinnig aus. Was ist die echte Fehlermeldung im Log?
-
@apollon77 Und zwar habe ich nochmal nachgeguckt im Reiter "Adapter" Stand gar nicht das der Adapter überhaupt installiert wurde. Aber bei Instanzen war er gelb bzw rot und einen Ordner war auch angelegt. Ich konnte den "Adapter" noch nicht mal von den Slave deinstallieren. Und da habe ich ihn händig gelöscht. Danach habe ich den Adapter neu installiert, Zigbee Stick angesteckt und plötzlich ging es.
-
@basti97 sagte in [How-to] Node.js für ioBroker richtig updaten:
Ich konnte den "Adapter" noch nicht mal von den Slave deinstallieren
wie hast du ihn denn da drauf bekommen?
War der schon vor der Einbindung ins Multihost da installiert? -
@homoran Nein ich habe den Slave komplett neu installiert. Und der war zu diesen Moment schon mit den Master verbunden.
Ich hatte zwar gestern den Adapter schon mal versucht zu installieren aber außer der ersten drei Zeilen kam nichts auch nach längeren warten nicht. Irgendwann wurde ich automatisch vom iob abgemeldet, da es schon so spät war habe ich mich nicht erneut angemeldet und den PC ausgemacht. Heute Früh wollte ich dann per Konsole den Zigbee Adapter installieren aber da brachte er mir das Zigbee bereits installiert war.
Wo ich mich dann später bei iob Anmelden wollte. Sah ich das der Adapter plötzlich unter Instanzen zu sehen war. Aber wie gesagt bei Adapter stand nichts bzw ich konnte ihn dann nicht deinstallieren. -
@apollon77 Ich habe noch ein Problem und zwar stieg mein plötzlich installierter Raspberry Slave aus.
Das letzte was ich aktualisiert habe war der Zigbee Adapter und DS18b20 Adapter.iobroker status internal/modules/cjs/loader.js:905 throw err; ^ Error: Cannot find module '/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js' at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15) at Function.Module._load (internal/modules/cjs/loader.js:746:27) at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:75:12) at internal/main/run_main_module.js:17:47 { code: 'MODULE_NOT_FOUND', requireStack: []
Vor zwei Stunden hat es noch funktoniert. Was kann das sein?