NEWS
[HowTo] ioBroker Restore unter Linux durchführen
-
@henrik Sehr schön, also wie bei mir.
Es wäre gut, wenn Du bei Github ein Issue erstellst, das bei Dir kein Backup mehr möglich war, weil der Withings Adapter Dir 115000 Objekte erstellt hat -
Hallo,
am Sonntag hat es meinen HOST zerlegt (vermutlich Stromausfall und startet nicht mehr, Bios und BootMenue klappt alles). Ich muss ihn also neu aufsetzen. Vom Samstag habe ich eine komplette Kopie des ioBroker Ordners im gestoppten Zustand auf dem NAS (wurde per Script immer gesichert). Jetzt mein Probelem.
Ich habe einen NUC N2820, Celeron 2.13 GHz, darauf lief Debian 8. Weil ioBroker ja immer lief, sind ein paar Sachen nicht ganz aktuell:
- nodeJS war irgendwas 10.x
- npm auf 6.x
- jsController 3.3.15
Wollte ich mal beheben, aber lief ja immer :).
Ich bin mir nicht sicher wie ich alles wieder herstelle.
Ich dachte mir
- Debian 11 aufsetzen.
- nodeJs 14 installieren
- curl installieren
IOBroker übers Script installieren lassen und nur die Ordner "iobroker_data" und "node_module" ersetzen?
Und dann einfach den iobroker Ordner unter /opt/ entpacken und ersetzen
iobroker fix
drüber laufen lassen? Aber dann fehlen doch bestimmt ein paar Pakete die von den Adapter benötigt werden?
Ich bin mir da leider nicht so ganz sicher und würde micht über Tipps freuen.
Oder kann ich mir aus meiner Kopie händisch ein Archiv für den BackIt Adapter nachbauen und das dann einspielen lassen?
Grüße
Brati
-
@brati sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Ich dachte mir
Debian 11 aufsetzen.
nodeJs 14 installieren
curl installierennicht ganz korrekt!
Debian 11 und curl passt.
Dann nur noch den Einzeiler und das aktuell empfohlene node mit passendem npm wird mit ioBroker automatisch installiert.
(ist übrigens inzwischen node v16)@brati sagte in [HowTo] ioBroker Restore unter Linux durchführen:
die Ordner "iobroker_data" und "node_module" ersetzen?
warum?
das gibt bestimmt Probleme@brati sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Und dann einfach den iobroker Ordner unter /opt/ entpacken und ersetzen
nein!
einfach ein Backup wieder einspielen und alles wird passend neu gebaut.
Die Dateien in den alten Verzeichnissen passen nicht mehr zu der neuen Installation -
Mein Backup ist ja nur eine komplette Kopie des alten Ordners :(. Was soll ich daraus nehmen? Alles oder nur partiell?
Grüße
Brati
-
@brati sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Mein Backup ist ja nur eine komplette Kopie des alten Ordners
du hast kein
iobroker backup
oder Backitup-Backup?Dann wird es schwierig, aber nicht unlösbar.
Wie geschrieben sind die bestehenden Dateien für die bestehende Hardware / OS / Node / npm - Versionen gebaut worden und laufen nur auf identischem System ohne Probleme. Dazu gehört auch der Hostname und ggf. die IP-Adresse.Wenn du das alles wieder rekonstruiert herstellen kannst dann solltest du das /opt/iobroker/ Verzeichnis komplett ersetzen können,
-
Ok, hab noch das alte iso rumliegen. Dann baue ich das alte System auf, ziehe ein BackItUp und wechsle dann gleich auf Debian 11, installiere ioBroker neu und spiele das Backup ein, dann sollte ich seine saubere Installation haben.
Grüße
Brati
-
@brati sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Dann baue ich das alte System auf, ziehe ein BackItUp und wechsle dann gleich auf Debian 11, installiere ioBroker neu und spiele das Backup ein, dann sollte ich seine saubere Installation haben.
das klingt brauchbar!!
-
@homoran sagte in [HowTo] ioBroker Restore unter Linux durchführen:
nicht ganz korrekt!
Debian 11 und curl passt.
Dann nur noch den Einzeiler und das aktuell empfohlene node mit passendem npm wird mit ioBroker automatisch installiert.
(ist übrigens inzwischen node v16)ist dann der Punkt 4 überflüssig?
Oder habe ich das falsch verstanden? -
@vumer sagte in [HowTo] ioBroker Restore unter Linux durchführen:
ist dann der Punkt 4 überflüssig?
Oder habe ich das falsch verstanden?nur nicht vollständig gelesen.
in einem großen roten Feld zu Beginn stehtmit dem aktuellen Installer von ioBroker (siehe unten) wird auf einem System ohne node.js automatisch die aktuell empfohlene Version von node.js mit installiert! Eine vorherige separate Installation von node.js ist somit nicht mehr nötig.
-
@homoran bin immer noch nicht dazu gekommen, die Seite neu zu machen, wird auch aktuell noch ne Weile dauern. Habs aber nicht vergessen.
-
@crunchip sagte in [HowTo] ioBroker Restore unter Linux durchführen:
bin immer noch nicht dazu gekommen, die Seite neu zu machen,
Eilt auch nicht - keine Hetze!
Irgendetwas wird immer nicht passen.Selbst wenn du meinst jetzt die ultimative Lösung gefunden zu haben, wirst du dich wundern wie kreativ die User sein können
-
Vielen Dank. Das System läuft jetzt wieder auf einer Debian 11 Installation. Im alten System waren noch Dateien aus 2016... ging also lange gut
Grüße
Brati
-
Guten Tag,
ich habe heute meine Raspi neu aufgesetzt. Ich habe mein ioBroker Backup eingespielt, es sind auch alle Adapter(noch deaktiviert), Objekte und Scripte wieder da.
Jetzt wollte ich bevor ich alles wieder soweit anwerfe mal noch etwas aufräumen, leider kann ich weder Scripte noch Objekte löschen. Ich erhalte immer einen Fehler: "Cannot delete object: permissionError" oder bei Scripten "Permission denied". Scripte und Objekte lassen sich ändern. Anlegen konnte ich auch aber diese dann nicht löschen.Ich habe bei dieser Installation mit dem Raspberry Pi Imager den Standard User von PI auf einen anderen geändert. iob fix habe ich schon laufen lassen, hat aber nichts geholfen.
Jemand eine Idee an was das liegen könnte?
Danke im voraus
-
-
@thomas-braun Danke, den Thread hab ich leider nicht gefunden. Wenigstens scheine ich nicht alleine mit dem Problem zu sein.
-
@ronny-gerndt
Ich hatte das gleiche Problem und bei mir lag es am admin Adapter. Bei der Version 6.2.22 war es das Problem, dass man Datenpunkte nicht löschen konnte. Es sollte aber mit der 6.2.23 behoben sein. -
@simatec vielen Dank für die Anleitung zum Restore.
Im Folgenden meine Erfahrungen beim Restore auf einem anderen Host mit einem anderen Betriebssystem (von einer multi-Host Installation mit Mac Mini als Master auf einen Ubuntu Server single-host).
Ein paar Hinweise für dieses Szenario sollten evtl. in die Anleitung aufgenommen werden.-
Problem
restore setzt die IP des multihost master in die single host installation mit dem Ergebnis, dass nichts geschrieben werden kann.
Lösung: multihost umgebung wieder zu single host machen und die IP der JSON wieder auf 127.0.0.1 und neues Backup machen.... -
Problem
die Adapter installation läuft für VIS auf Fehler (aber solche tickets findet man erst nachher):
https://forum.iobroker.net/topic/57645/fehler-bei-vis-installation-nach-restore
Lösung: VIS via alte Version installieren & updaten, restore nochmal starten -
Problem
alte Adapter Versionen werden installiert, warum auch immer...
Lösung: adapter manuell updaten vor deren start -
Problem
neue usb modem adressen für Zwave- und Zigbee-Dongle (Mac anders als Ubuntu)
neu:
/dev/ttyACM0
/dev/ttyUSB0
aber welche ist welche?
Lösung: manuell ausprobieren, und bei Fehler wie dem folgenden, die andere versuchen, weil das dropdown in den adaptern dafür nicht geht. vermutlich weil die ja noch nie gestartet wurden...
Failed to initialize the driver: ZWaveError: Timeout while waiting for an ACK from the controller (ZW0200) at Driver.sendMessage (/opt/iobroker/node_modules/zwave-js/src/lib/driver/Driver.ts:4001:23) at ZWaveController.identify (/opt/iobroker/node_modules/zwave-js/src/lib/controller/Controller.ts:776:33) at Driver.initializeControllerAndNodes (/opt/iobroker/node_modules/zwave-js/src/lib/driver/Driver.ts:1265:26) at Immediate.<anonymous> (/opt/iobroker/node_modules/zwave-js/src/lib/driver/Driver.ts:1072:16) (ZW0100)
-
Problem
"history" Datei-Pfad auf Mac anders und restore versucht den alten Pfad zu erzeugen, was natürlich nicht geht. (der wurde mit dem restore in der adapter konfig wiederhergestellt)
Lösung: die History dateien manuell in den neuen history Pfad kopieren und Dateirechte für iobroker user setzen. evtl. hätte aber auch eine Korrektur des Pfades in der Backitup-konfiguration gereicht (habe ich aber nicht mehr versucht) -
Problem
neue mqtt server ip für alle shelly devices nötig, da neuer Host mit neuer IP
Lösung: in jedem manuell ändern...
-
-
@chris299 sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Problem
neue usb modem adressen für Zwave- und Zigbee-Dongle (Mac anders als Ubuntu)
neu:
/dev/ttyACM0
/dev/ttyUSB0
aber welche ist welche?
Lösung: manuell ausprobieren, und bei Fehler wie dem folgenden, die andere versuchen, weil das dropdown in den adaptern dafür nicht geht. vermutlich weil die ja noch nie gestartet wurden...Bessere Lösung: Die Links zu den Dateien aus /dev/serial/by-id nehmen. Die passen nämlich immer.
-
@thomas-braun danke für den Tipp. Allerdings sind die sehr lang bei mir:
~$ sudo ls -al /dev/serial/by-id drwxr-xr-x 2 root root 80 Apr 20 14:13 . drwxr-xr-x 4 root root 80 Apr 19 22:48 .. lrwxrwxrwx 1 root root 13 Apr 20 14:13 usb-0658_0200-if00 -> ../../ttyACM0 lrwxrwxrwx 1 root root 13 Apr 19 22:52 usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_a45c4ee898c9eb11b94d914f1d69213e-if00-port0 -> ../../ttyUSB0 ~$ sudo ls /dev/serial/by-id usb-0658_0200-if00 usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_a45c4ee898c9eb11b94d914f1d69213e-if00-port0
-
Ja, aber macht doch nix? Copy Paste und drin ist der Kram. Der Vorteil ist wie gesagt, dass das Linkziel vom Kernel immer richtig gesetzt wird.