NEWS
[gelöst] System zerstört nach Aufruf "Alle Adapter upgraden (Expterteneinstell.)
-
Hallo,
ich weiß nicht, was mich geritten hat, aber ich habe den Menüpunkt alle Adapter upgraden aufgerufen( nur sichtbar in den Experteneinstellugen) Normalerweise sollte ja nichts passieren bei den Adaptern, die eh aktuell sind - so war mein Gedanke.
Jedoch kam als erstes eine Fehlermeldung bei NodeRed "fehlerhafte json Datei auf Github" oder so ähnlich. Das habe ich noch gelassen ignoriert… Als nächstes wurde der Cloud Adapter "updatet von 0.7.1 auf 0.6.8 oder so... nachdem ich in der ÜBersicht gesehen habe, dass ich nun meinen Adapter auf 0.7.1 updaten kann (Updatesymbol), wußte ich, das ganze hat mit einem Update nichts zu tun, da werden alte Files aufgespielt ! Nachdem ich das Update Fenster geschlossen habe ("Update" ist sicher weitergelaufen), habe ich mich eine Weile um andere Sachen gekümmert und irgendwann schau ich auf mein Tablet mit der iobroker app: ein drehender Kreis. Nichts passiert. Ich habe das System neu gestartet. Folgende Fehlermeldung kommt nun nach iobroker start:
module.js:327
throw err;
^
Error: Cannot find module '/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js'
at Function.Module._resolveFilename (module.js:325:15)
at Function.Module._load (module.js:276:25)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:140:18)
at node.js:1043:3
wie bekomme ich mein System wieder hin ? Habe auch ein Backup, aber ziemlich alt
Ach ja, ich sehe das als Fehler im Programm, wenn alte Dateien aufgespielt werden - dehalb hier in dieser Kategorie...
EDIT: probiere erstmal " npm install iobroker.js-controller --production" - melde mich dann...
Gruß, Holger
-
Ich kann hier nur etwas zu den "alten" Dateien sagen.
Dazu gab es schon mal einen Thread.
um es noch mal klar zu stellen, was "alt" eben nicht ist:
Mit einem````
sudo iobroker upgradeNICHT die Vorabversioonen von GitHub. Somit sind dies keine "alten" versionen sondern die neuesten stabilen und getesteten Versionen, was die von Githaub (und neuerdings über das repo "latest") installierte Versionen nicht sind. Gruß Rainer
-
Ich kann hier nur etwas zu den "alten" Dateien sagen.
Somit sind dies keine "alten" versionen sondern die neuesten stabilen und getesteten Versionen, was die von Githaub (und neuerdings über das repo "latest") installierte Versionen nicht sind. `
Also wenn unter Adapter eine neuere Version angezeigt wird und ich diese mit dem Updatesymbol updaten kann, ist das für mich die neueste Version. Ich gehe davon aus, das diese stable ist, denn andere werden da ja gar nicht angezeigt - so sollte man denken. Wie auch immer, ich gehe davon aus, dass einige User, welche nicht sooo tief drin sind in der Materie, da Probleme bekommen werden (auch wenn es unter Experteneinstellungen liegt). Ich wäre zumindest auch über eine Nachfrage dankbar gewesen, ob die Version von 0.7.1 wirklich zurück zur 0.6.8 gesetzt werden soll…
Wieso mein ganzes System bzw der js-controller nicht mehr funktioniert hat, ist auch sehr merkwürdig. (nach o.g. Aufruf gehts wieder)
-
Du hast eingangs nichts dazu geschrieben, ob dein Host (js-controller) auch ein Update haben wollte. Es sieht ja so aus, nach deiner Problemlösung. Hormoran hat schon oft was dazu geschrieben, dass immer zuerst der js-controller und dann erst der admin-Adapter geupdatet werden soll. Ob deine Fehlermeldung auf genau dieses Problem hinweist, weiß ich nicht, aber deine Lösung deutet das an!
Enrico
-
Also wenn unter Adapter eine neuere Version angezeigt wird und ich diese mit dem Updatesymbol updaten kann, ist das für mich die neueste Version `
Das habe ich wohl überlesen. Aber auch das muss differenziert werden.Welches Repository hast du unter Systemeinstellungen als default eingestellt.
Solltest du das auf latest eingestellt haben bekommst du immer die neuesten (evtl. nicht stable) updates angeboten.
Ich kenne das von dir beschrieben Verhalten des "downgrades" (=alte Versionen) bisher nur wenn man vorher über das Octocat-Icon oder sonstwie die Github versionen installiert hat und dann "upgrade all" anklickt, bzw. einfach sudo iobroker upgrade (ohne Angabe von AdapterName) macht.
Ansonsten ist natürlich das zu beachten worauf Enrico hinweist:
Ein Upgrade eines Adapters benötigt die entsprechende neueste Version des js-controllers (im Reiter Hosts zu sehen)
Dies wieder geradezubiegen kann einiges an Mühe machen - wenn man Glück hat kann es aber auch mit einem Befehl funktionieren.
und nach deinem EDIT sieht es ja genau so aus.
Gruß
Rainer
-
Welches Repository hast du unter Systemeinstellungen als default eingestellt.
Solltest du das auf latest eingestellt haben bekommst du immer die neuesten (evtl. nicht stable) updates angeboten. `
ich habe hier eigentlich nichts geändert - siehe Bild:
1566_snap.jpg -
ich habe hier eigentlich nichts geändert - siehe Bild: `
Der Reiter davor ist entscheidend.Hier stehen nur die Repos die du zur Verfügung hast.
Das ausgewählte steht unter "Haupteinstellungen"
"default" ist stable, "latest" ist eben latest, also stets die neuesten Versionen.
Gruß
Rainer
-
-
-
jaja, lacht ihr nur. :lol: Aber auch da, nichts geändert, also default. `
Das ging an Rainer… :mrgreen:
Wir hatten mal eine Diskussion wo die Info, welche Repo man eingestellt hat, auf welchem Reiter sinnvoll ist.
Ich fand es nicht so sinnvoll, sie im Reiter davor anzuzeigen, wenn im nächsten Reiter die Infos stehen
Das hatte nichts mit Deinem Thema zu tun. Das ist natürlich Käse... würde gerne helfen können.
-
Aber so oder so … auch auf der Kommandozeile macht ein "upgrade" (aso all quasi) auch bei mir komische Dinge als ob er ein uralt-repo-File nimmt und damit viele Alte Versionen installiert ...
-
Das hat es bei mir auch schon gegeben, allerdings nur die github Versionen wieder auf die normalen heruntergestuft.
Vorher ein sudo iobroker update ist natürlich Pflicht.
Gruß
Rainer
-
Ja Homoran, das ist das "Standardverhalten" und ja hatte ein "iobroker update" vorher laufen … komisches Verhalten trotzdem
-
Wenn Du vorher ein "iobroker update" laufen läßt, siehst Du alle Adapter mit deren Versionen sowie "nur" den Hinweis, welche Adapter als updateable gelten (und von welcher auf welche Version es gehen würde).
Ich mache immer eine gefilterte Ausgabe
iobroker update | grep Update
Damit bekomme ich nur die Adapter angezeigt, für die es eine andere (neuere oder auch ältere) Version gibt.
Danach entscheide ich selber, welchen Adapter ich mit
iobroker upgrade [adaptername]
aktualisiere (VIS würde bei mir sonst ein Downgrade erfahren).
Gruß,
Eric