NEWS
Node Red neu installieren - Flows weg?
-
Hi,
mal ne vielleicht dumme Frage, wenn ich den Node Red Adapter neu installiere, sind dann all meine bisherigen Flows weg?Gruß
Kymchy -
@kymchy Wenn Du kein Backup machst - dann ja. Du kannst aber entweder alle Flows exportieren. Am Allerbesten ist es folgende Dateien weg zu sichern, falls man auch eigene Nodes installiert hat.
Hier sind mal alle Dateien - die man wegsichern kann, wenn man mehr oder weniger 1:1 wieder alles wie vorher aufbauen will: https://forum.iobroker.net/topic/57287/node-red-läuft-nach-update-auf-version-4-0-0-nicht-mehr/8?_=1665339189420
Die Flows sind alle in der flows.json gesichert - so wenn diese Datei weg gesichert ist, dann sind zumindest alle Flows gesichert.
Falls es aber ein Problem mit Code 25 oder nach npm Update gibt, mach lieber Dein node_modules Verzeichnis leer, bevor Du NodeRed neu installierst.
-
@mickym Vielen Dank!
Das Problem, welches ich habe, tauchte tatsächlich nach der Code 25 Geschichte auf.
Ich weiß aber nicht, ob es tatsächlich daran liegt.
Es ist so, dass ich mit dem Node "node-red-contrib-virtual-smart-home" ein Aussenthermometer unter Alexa abfragen konnte. Jetzt kommt bei einer Anfrage an Alexa immer die Antwort "ich weiß nicht, was schief gegangen ist".
In der Alexa App wird die Temperatur allerdings noch korrekt angezeigt. Die Anzeige ist aber etwas beschnitten, dass sieht dann so aus:
Nicht über die Höhe der Temperatur wundern, die habe ich testweise über ein Inject Node an den Alexa Node geschickt.
Alle anderen Sachen unter Node Red funktionieren noch.Beste Grüße
Kymchy -
@kymchy sagte in Node Red neu installieren - Flows weg?:
node-red-contrib-virtual-smart-home
Diese Node hat leider - ich finde das auch unmöglich - nachträglich das Lizenzmodell geändert. Es werden nur noch 7 Geräte unterstützt. Schau erst mal, ob das dein Problem sein könnte.
-
@mickym nee, hab nur 6 Geräte
-
@kymchy Wie gesagt - wenn Du den Code 25 gehabt hast - ich bin kein Freund da stückweise voranzugehen. Wenn Du eine Imagesicherung hast, empfehle ich hier eher das ganze node_modules Verzeichnis zu löschen - hast Du die Möglichkeit via Image auf den aktuellen Stand zurück zusichern? Bevor Du das Verzeichnis löschst - danach poste ich Dir die Schritte - das Verzeichnis neu aufzubauen.
Unter dem 1. Link findest Du eine Anleitung das node_modules Verzeichnis neu aufzubauen, der 2. Link macht Deinen Baum ggf. wieder sauber.
-
@mickym ein Image habe ich auch nicht mehr, weil mir just einen Tag nach der Code 25 Geschichte eine backup Platte abgerauscht ist.
-
@kymchy Ja aber kannst Du noch ein Image erstellen bevor Du das node_modules Verzeichnis löschst? - Siehe voriger Post.
-
@mickym eine aktuelle Synchronisierung habe ich, ja.
-
@kymchy Ok - wenn Du auf den jetzigen Zustand zurückkehren kannst - dann empfehle ich Dir das node_modules Verzeichnis neu aufzubauen:
In meinen Augen ist es einfach mühsig, jeden Fehler der durch das npm Update kommt wieder auf die Fehlersuche zu gehen.
-
@mickym ich hatte nach dem Code 25 Schl... ein ioBroker Downgade(Docker) gemacht mit NPM 6.14.16. Danach konnte ich wieder alle Adapter updaten und alles lief wieder wie vorher. Nur an die 4.0 Version von NodeRed habe ich mich nicht rangetraut. Beim Docker sind die Terminal Geschichten auch etwas begrenzt, daher muss ich mal schauen...evt. auch erstmal bei dieser Alexa Tante...
-
@kymchy Na ehrlich gesagt - musst Du eh auf nodejs 16.x und npm 8.x - und anstelle des Downgrades - hätte ich lieber das node_modules Verzeichnis gelöscht. Denn Du musst auf kurz oder lange updaten.
-
@mickym npm list gibt am Schluss:
npm ERR! peer dep missing: jscs@^3.0.3, required by jscs-loader@0.3.0
Böhmische Dörfer für mich...
-
@kymchy Wie gesagt - dann ist dein Baum nicht sauber, wie gesagt - Du musst eh updaten. Wenn Du auf den jetzigen Zustand wieder zurück kannst, dann würde ich nodejs sauber updaten und das node_modules neu aufzubauen. Ansonsten wirst Du immer wieder Probleme haben, wenn das alles nicht sauber ist.
Der nächste Schritt wäre dann auch die package.json wieder neu aufzubauen.
Auf der Wurzelebene im node_modules Verzeichnis sollten nur iobroker.module auftauchen
Bei mir schaut der Baum soweit sauber aus - und das sollte Dein Primärziel sein:
npm list iobroker.inst@3.0.0 /opt/iobroker ├── iobroker.admin@6.2.22 ├── iobroker.backitup@2.4.12 ├── iobroker.dwd@2.8.3 ├── iobroker.flot@1.11.0 ├── iobroker.info@1.9.19 ├── iobroker.javascript@6.0.3 ├── iobroker.js-controller@4.0.23 ├── iobroker.linux-control@1.1.3 ├── iobroker.mercedesme@0.0.56 ├── iobroker.mqtt@4.0.7 ├── iobroker.node-red@4.0.0 (git+ssh://git@github.com/ioBroker/ioBroker.node-red.git#049d7bdddc747071fc7379551d4bd7a66d690c57) ├── iobroker.pi-hole@1.3.4 ├── iobroker.ping@1.5.3 ├── iobroker.simple-api@2.7.0 ├── iobroker.socketio@4.2.0 ├── iobroker.sourceanalytix@0.4.14 ├── iobroker.sql@2.1.8 ├── iobroker.tr-064@4.2.16 ├── iobroker.vis-hqwidgets@1.3.0 ├── iobroker.vis@1.4.15 ├── iobroker.web@4.3.0 └── iobroker.yahka@0.13.1
Wenn Dir das jetzt zuviel Risiko ist - dann machs halt zu einer Zeit, wenn Du mehr Zeit hast, aber Du wirst nicht drum rum kommen.
-
@mickym OK, Danke!
-
@kymchy Ich will Dir aber nichts einreden. Wie gesagt wenn Du glaubst Du kommst mit einer NR Installation wieder zum Ziel dann probiere es - die Dateien die zu sichern sind, habe ich Dir gepostet. Ich bezweifle es halt, weil da in meinen Augen mehr kaputt ist.
-
@kymchy sagte in Node Red neu installieren - Flows weg?:
npm ERR! peer dep missing: jscs@^3.0.3, required by jscs-loader@0.3.0
Das dürfte sich durch die Hin- und Herspringerei in den npm-Versionen ergeben. Einmal auf npm>6 gegangen verhindert einen ordentlichen Sprung zurück auf eine kleinere Version.
Die Nicklichkeiten (aka Fehler 25...) beseitigt man mit diesem Einzeiler:for i in $(find /opt/iobroker/node_modules -type d -iname ".*-????????" ! -iname ".local-chromium"); do rm -rf ${i%%/}; done
-
@thomas-braun bei einer Docker Installation ist das mit deinem Einzeiler wohl nicht so einfach. Den Befehl quittiert das rudimentäre Terminal mit einer Fehlermeldung.
-
@kymchy sagte in Node Red neu installieren - Flows weg?:
Den Befehl quittiert das rudimentäre Terminal mit einer Fehlermeldung.
Und die ist geheim?
Und ja, Docker ist Krampf in meinen Augen. -
@thomas-braun
nee, geheim ist die nicht:OCI runtime exec failed: exec failed: unable to start container process: exec: "for": executable file not found in $PATH: unknown
Der Pfad sollte aber richtig sein, "NPM list" wird ja korrekt ausgeführt.