NEWS
[Problem ]ioBroker nach npm 5 wiederherstellen
-
war wohl etwas optimistisch… und kein Backup :mrgreen:
Meine Neuinstallation läuft (lief) unter npm 4 und node.js 8 sehr gut.
Gerade die neue Version vom Javascript-Adapter installiert, was in folgenden Fehler endete:
! $ ./iobroker upgrade javascript
! Update javascript from @3.4.0 to @3.5.1
! npm install iobroker.javascript@3.5.1 –production --prefix "/opt/iobroker" (System call)
! npm
! WARN
! deprecated
! coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
! npm
! notice created a lockfile as package-lock.json. You should commit this file.
! ERROR: Cannot find io-package.json in /opt/iobroker/node_modules/iobroker.js-controller/adapter/javascript
! ERROR: process exited with code 10Danach war npm auf Version 5, was leider die bekannten Probleme brachte:
$ ./iobroker status module.js:538 throw err; ^ Error: Cannot find module '/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js' at Function.Module._resolveFilename (module.js:536:15) at Function.Module._load (module.js:466:25) at Function.Module.runMain (module.js:676:10) at startup (bootstrap_node.js:187:16) at bootstrap_node.js:608:3
npm in v4 ist wieder installiert
Bevor ich mir jetzt einige Tage Arbeit zerstöre:
1.) was ist die beste Vorgehensweise, um die bestehende Installation zu retten?
2.) jemand eine Idee, wie man die Version von npm stabil auf 4 halten kann?
-
Ein kurzer Zwischenstand.
Folgende Vorgehensweise hat funktioniert:
sudo npm i npm@latest-4 -g cd / opt/iobroker sudo mkdir sicherung sudo cp -R /opt/iobroker /opt/sicherung sudo chmod -R 777 * sudo npm install iobroker.js-controller --save sudo ./reinstall.sh iobroker start
Nach dem Start installieren sich alle Adapter neu. Die alten Einstellungen bleiben erhalten.
Jetzt muss ich beobachten, ob es problemlos läuft und alles wieder funktioniert.
Auf dem ersten Blick sieht alles gut aus.
Offene Aufgaben:
-
automatisches Upgrade von npm 4 auf 5 verhindern
-
Datensicherung
Derzeitige Versionen:
$ npm -v 4.6.1 $ node -v v8.9.3
-
-
automatisches Upgrade von npm 4 auf 5 verhindern `
Ich fürchte das geht nur wenn du kein nodejs 8.x nimmst.Gruß Rainer
-
Ich geb die Hoffnung nicht auf, dass man das irgendwie auf die Version 4 festnageln kann
Alle paar Wochen ein Reinstall wäre nicht so prickelnd.
Den ersten Slave am neuen System habe ich dann vorsichtshalber mit Node.js 6 installiert
Komisch war, dass ich schon bei zig Adapter Updates durchgeführt habe und npm immer bei 4 blieb.
Ich vermute, dass es ein Node.js Update gab (ich hatte die Tage davor per apt upgrade den Master aktualisiert und meine da war ein Node.js Update dabei. Wahrscheinlich war der JavaScript Adapter danach das erster Adapterupdate.
Dann wäre die Lösung nach einem Node.js Update immer npm zu kontrollieren und ggf. wieder auf die 4 zu ziehen, bevor man den Master rebootet. Damit könnte ich leben.
Gesendet von iPad mit Tapatalk
-
Ich vermute, dass es ein Node.js Update gab `
ich auch.Aber irgendwo habe ich etwas installieren wollen und dann kam:
running apt-get update && apt-get upgrade for you
Irgend so etwas war das sicher bei dir auch.
Dann wäre die Lösung nach einem Node.js Update immer npm zu kontrollieren und ggf. wieder auf die 4 zu ziehen, bevor man den Master rebootet. Damit könnte ich leben. `
Toll ist aber was anderes.Gruß
Rainer