NEWS
[gelöst] Wiederherstellung geht nicht mehr
-
Hi.
Ich wollte eine neue SD Karte verwenden, aber beim zurückspielen des Backups in ein Jungfräuliches System welches aber zuvor auf die letzen Version upgedatet wurde kommt IMMER folgender Fehler:
host.ioBroker Using backup file 2018_04_03-12_52_44_backupiobroker.tar.gz iobroker controller daemon is not running host.ioBroker OK. host.ioBroker Clear all objects and states... clean 238 objects... /opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2546 callback('Object is marked as non deletable'); ^ TypeError: callback is not a function at Immediate. <anonymous>(/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2546:21) at runCallback (timers.js:672:20) at tryOnImmediate (timers.js:645:5) at processImmediate [as _immediateCallback] (timers.js:617:5)</anonymous>
Selbst wenn ich ein Backup auf diesem System erstelle und dies einspielen will, kommt das gleiche (dies war nur zum testen, ob vlt mein Backup fehlerhaft ist).
Neuinstallation des JS-Controllers blieb ohne erfolg.
MOD-Edit by eric2905; Code-Tags einegfügt
3832_backup.jpg -
Achso… der JS-Controller ist jetzt bei 1.40... Ich glaub das ist auch das problem.
Wie kann ich den auf eine bestimmte Version z.b. 1.30 downgraden?
Ich hab festgestellt, das die objectsInMemServer.js in version 1.3.0 105564 byte und in der 1.4.0 115785 byte groß ist. Aber es geht kein Restore mehr. Hab es gerad nochmal mit einer neuen Installation versucht. Nur beim Update des JS-Controllers mach ich ja "nur"
sudo iobroker update
sudo iobroker upgrade self
bzw neu installiern mit npm install iobroker.js-controller --production.
Deswegen meine Frage, ob und wie ich ne bestimmte Version installieren kann. Auf meinem "Produktiven" System ist die 1.3.0. Dort funktioniert der Restore noch.
Gruß Peter
-
Wieso sollte ein controller 1.40 das Problem sein?
Wie hast du
@fraeggle:ein Jungfräuliches System `
aufgesetzt?Gruß
Rainer
-
Ich habe mal auf Github einen Fix gemacht. denke kommt dann in die 1.4.1 rein
-
Ich habe nen Banana PI. Dort hab ich das Image vom IOBroker genommen.
Danach das System wie beim Produktiven System mit update und upgrade auf letzten Stand gebracht.
Dann IOBroker update, da auch das Image des IOBrokers eine Uralt Version des js-controllers enthällt.
cd /opt/iobroker
sudo iobroker stop
sudo iobroker update
sudo iobroker upgrade self
sudo iobroker start
und zu guter letzt das zurückspielen des Backups. Allerdings kann ich da auch nicht einmal ein vorher auf diesem "leeren" System erstelltes Backup zurück spielen. Es kommt immer oben gennante Fehlermeldung. Einzig der js-controller hat bei diesen beiden Installationen eine andere Version.
Gruß Peter
-
oder das backup ist defekt
-
Ich habe mal auf Github einen Fix gemacht. denke kommt dann in die 1.4.1 rein `
Ich werd das morgen versuchen…. heut hab ich keinen kopf mehr dafür...
Ich geb bescheid.
Danke
Gruß Peter
-
Ich habe mal auf Github einen Fix gemacht. denke kommt dann in die 1.4.1 rein `
Hallo Apollon77
Funktioniert leider nicht. Fehlermeldung immer noch
host.ioBroker Using backup file 2018_04_05-08_59_48_backupiobroker.tar.gz
iobroker controller daemon is not running
host.ioBroker OK.
host.ioBroker Clear all objects and states…
clean 13 objects...
/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2546
callback('Object is marked as non deletable');
^
TypeError: callback is not a function
at Immediate. <anonymous>(/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2546:21)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)
at processImmediate [as _immediateCallback] (timers.js:617:5)
Spasses halber hab ich mal die objectsInMemServer.js von der Version 1.3.0 genommen. Und was soll ich sagen, das Backup lässt sich zurückspielen.
Hab die 2 mal angehängt. Und bevor andere sagen das steht v1.x.x.TXT ist so gewollt das nix passieren kann
Gruß Peter</anonymous>
3832_objectsinmemserver.js.v.1.4.0.txt
3832_objectsinmemserver.js.v1.3.0.txt -
Naja, eine 1.4.1 ist noch nicht released … also was hast Du genau getan was immer noch nicht tat?
-
Der Fehler passiert, wenn du den js-controller updatest. Dann lässt sich kein restore mehr ausführen.
Ich habe die /opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js von der Version 1.3.0 genommen und damit die
Datei der Version 1.4.0 ersetzt. Dann funktioniert das zurückspielen des Backups.
Also muss theoretisch irgendwas mit der objectsInMemServer.js der Version 1.4.0 nicht stimmen, da nicht einmal ein zuvor auf diesem
Stand erstelltes Backup zurück gespielt werden kann.
Gruss Peter
-
Schon klar. Deswegen hatte ich es auf Github gefixt
Kommt in der nächsten version. Es wäre denke ich ungefährlicher die gefixte 1.4.0er Version vom Github zu nehmen als die 1.3.0er
-
Die hatte ich ja versucht (gleich heute früh den js-controller neu installiert). Sorry wenn ich das so nicht gesagt hab.
Dabei hab ich gesehen. dass die Datei gößer ist als vor deinem Fix (Ca 10kb größer).
Vor deinem Fix war die Datei ca 115kb groß. Nach deinem Fix ca.125kb.
Aber es kommt immer noch der gleiche Fehler.
Deswegen wollte ich wissen, ob es funktioniert, wenn ich die Datei der Version 1.3.0 nehme.
Also zumindest bei mir (vlt mach ich ja auch einen Fehler) funktioniert der fix nicht.
Im Moment läuft mein ursprüngliches System. Ich kann aber jederzeit durch tausch der SD einen Veruch mit einem neuen patch versuchen.
Was ich nur nicht versteh, das Callback, welches ja angemeckert wird, existiert ja auch in der 1.3 version.
Deswegen versteh ich nicht warum jetzt diese Fehlermeldung kommt.
Um eine Fehlersuche zu vereinfachen (naja ob das wirklich so ist) hatte ich die 2 Dateien mit hochgeladen.
callback('Object is marked as non deletable');
^
TypeError: callback is not a function
-
gleich heute früh den js-controller neu installiert) ` vom github?
und anschließend den Server rebootet?
Gruß
Rainer
-
Ja, hab auch verschiedene Versuche durch.
cd /opt/iobroker
iobroker stop
npm install iobroker.js-controller –production
iobroker start
Kein zurückspielen möglich.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install curl build-essential
sudo curl -sL https://deb.nodesource.com/setup_6.x | sudo bash -
sudo apt-get install -y nodejs
Sagt mir ich habe bereits die neueste Version
Reboot habe ich gemacht.
Ich habe von dem Geundkonfiguriertem System ein backup gemacht, und versucht dieses zurückzuspielen:
host.ioBroker Using backup file 2018_04_05-13_28_49_backupiobroker.tar.gz
iobroker controller daemon is not running
host.ioBroker OK.
host.ioBroker Clear all objects and states...
clean 272 objects...
/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2546
callback('Object is marked as non deletable');
^
TypeError: callback is not a function
at Immediate. <anonymous>(/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:2546:21)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)
at processImmediate [as _immediateCallback] (timers.js:617:5)
Wie gesagt mit der einen Datei objectsInMemServer.js der Version 1.3.0 funktioniert das zurückspielen sofort und ohne Fehler.
Jetzt läuft erst mal wieder meine Vorgängerversion.
Gruß Peter</anonymous>
-
Und wo ist da die Installation aus github dabei?
npm install https://github.com/ioBroker/ioBroker.js-controller/tarball/master —production
Gruß
Rainer
-
Und wo ist da die Installation aus github dabei?
npm install https://github.com/ioBroker/ioBroker.js-controller/tarball/master --production
Gruß
Rainer `
SCHEI…....................
Ich weiß jetzt steinigst du mich
genau diesen weg hab ich heut früh vergessen...............
npm install https://github.com/ioBroker/ioBroker.js ... all/master --production
Nun geht ein Restore.
kann dann als gelöst gekennzeichnet werden.
SORRY Rainer
Aber wenigstens war am Anfang doch ein Fehler drin, welcher Dank euch behoben wurde.....
-