NEWS
[HowTo] ioBroker Restore unter Linux durchführen
-
Ich vermute das beim Update auf 4.x irgendetwas in die Hose gegangen ist.
Setze grad neu auf, hoffe nur meine VIS und die ganzen Scripte wieder an laufen bekomme.
@feinfinger möglichkeit wäre auch noch das iobroker-data Verzeichnis zu sichern und manuell wieder einzuspielen, sofern das heutzutage noch problemlos möglich ist
wie unter Punkt e) beschrieben https://forum.iobroker.net/topic/22867/how-to-node-js-für-iobroker-richtig-updaten/2 -
@feinfinger möglichkeit wäre auch noch das iobroker-data Verzeichnis zu sichern und manuell wieder einzuspielen, sofern das heutzutage noch problemlos möglich ist
wie unter Punkt e) beschrieben https://forum.iobroker.net/topic/22867/how-to-node-js-für-iobroker-richtig-updaten/2@crunchip
Hab’s hinbekommen.Konnte den npm Ordner der alten Installation neu aufsetzen und nun läuft diese wieder. 👍🏼
-
Hallo,
meine bisherige iobroker-Installation ist bereits einige Jahre alt, läuft aber noch problemlos. Backups werden mit Backitup täglich auf Fritz Nas erstellt. Ich möchte jetzt ein Restore nach dieser Anleitung auf eine neu erstellte iobroker Installation wiederherstellen. Habe das mit Backitup versucht und über die Konsole. In beiden Fällen kommt eine Fehlermeldung. Hier Auszug aus dem Log:
2022-04-01 14:33:19.759 - info: backitup.0 (1434) starting. Version 2.3.3 in /opt/iobroker/node_modules/iobroker.backitup, node: v14.19.1, js-controller: 4.0.21 2022-04-01 14:33:19.849 - error: backitup.0 (1434) [ERROR] [iobroker] host.iobroker Cannot extract from file "/opt/iobroker/backups/2022_03_27-03_00_10_backupiobroker.tar.gz" 2022-04-01 14:33:19.911 - info: backitup.0 (1434) [iobroker] backup was activated at 02:40 every 1 day(s) -
Wie führe ich einen Restore meiner ioBroker Installation auf einem Linux-System richtig durch??
Vorwort:
Da ich in der letzten Zeit immer wieder feststellen musste, dass sich viele User mit einem Restore sehr schwer tun, möchte ich hier mal eine Schritt für Schritt Anleitung für den Restore nach einem Crash, oder auch nach einem Hardwarewechsel, Systemwechsel oder sonstiges niederschreiben.
Grundsätzlich kann man im Vorfeld aber eines sagen, ein Restore ist bei richtiger Ausführung in wenigen Minuten erledigt und keiner braucht davor Angst haben.
Am Ende sind alle Daten wieder da und man hat ein neues System.
Aber gut fangen wir erstmal mit Grundlagen an, bevor wir tiefer einsteigen.Vorbereitung:
Für die Vorbereitung gehe ich erst einmal davon aus, dass ihr bereits eine lauffähige ioBroker Installation habt.
Um dies hinzubekommen, gibt es 2 Wege.
Entweder ihr installiert auf euren System ein fertiges Image aus dem Downloadbereich, oder ihr setzt euch ein eigenes Linux OS auf und installiert ioBroker nach dieser Anleitung.Was ist nun zu tun??
Wenn euer altes System die States und/oder Objekte in Redis gespeichert hatte, sollte ihr mit folgenden Befehlen erstmal auch das neue System mit dem Redis-Server ausstatten.
Solltetet ihr euch nicht sicher sein, ob ihr Redis verwendet und ihr noch Zugriff auf das alte System haben, dann bekommt ihr mit dem Befehl
iobroker statusdie benötigten Informationen.Die Ausgabe sieht bei einer Verwendung von Redis wie folgt aus:
iobroker is running on this host. At least one iobroker host is running. Objects type: redis States type: redisSteht in Objects type und/oder States type "redis", müsst ihr zwingend auf dem neuen System den Redis Server installieren.
Steht hingehen bei beiden Typen "file", wird der Redis Server nicht benötigt.Solltet ihr keinen Zugriff mehr auf das alte System haben und ihr wisst nicht, was da vorher genau konfiguriert war, dann installiert auf jeden Fall den Redis-Server im Vorfeld.
So installiert ihr Redis:
Dafür geht ihr per Putty in das Terminal und führt folgende Befehle aus:
sudo apt-get update sudo apt-get install redis-server sudo usermod -a -G redis iobroker sudo reboot nowAls nächstes sollte man den Installer Fix mal durchlaufen lassen, falls irgendwo noch nicht alle Rechte auf dem System passen sollten.
Dieser Schritt ist nur eine Empfehlung und ist nicht zwingend notwendig.
Ich führe diesen Befehl allerdings immer im Vorfeld aus.curl -sL https://iobroker.net/fix.sh | bash –Nun installieren wir uns noch das kleine Tool "htop".
Hiermit kann man sehr gut alle laufenden Prozesse einsehen, was nicht nur für den restore Interessant sondern generell sehr nützlich sein kann.
Hierfür führt ihr folgenden Befehl aus:sudo apt-get install htopNachdem dies erfolgt ist, kann es zu dem eigentlichen Restore kommen.
Restore:
Hier gibt es auch 2 Möglichkeiten:
1. Automatischer Restore mit Backitup
Wir fangen erst einmal mit der Variante des automatischen Restore mittels Backitup an.
Hier sind keinerlei Linux Kenntnisse erforderlich, da das Ganze mit der Weboberfläche von Iobroker erfolgt.
Als erstes müsst ihr euch den Adapter Backitup installieren.
Diesen findet ihr im Reiter unter Adaptern.Ist die Installation abgeschlossen, legt ihr euer zuvor vom alten System erstelltes „ioBroker Backup“ auf eurem neuen System mit einem sftp Programm wie zum Beispiel FileZilla oder WinSCP in dem Pfad /opt/iobroker/backups ab.
Backitup kann auch eine Restore vom NAS, Dropbox oder Google Drive ausführen, aber ich persönlich finde die lokale Variante am sichersten.
Wer da bereits seine Erfahrungen hat, kann dies auch gerne testen, wir bleiben hier in dieser Anleitung aber erstmal lokal.
Wenn ihr das ioBroker Backup erfolgreich abgelegt habt, öffnet ihr nun Backitup und geht in den Tab „Wiederherstellen“.
Dort stellt ihr die „Backup-Quelle“ auf Lokal und drückt im Anschluss speichern.
Wer ALLE seine Adapter nach dem restore automatisch starten lassen möchte, der kann hier noch die Option „Start aller Adapter nach dem Restore“ aktivieren und im Anschluss ebenfalls speichern.
Sollte das Backup auf einem anderen Host wiederhergestellt werden, sollte man diese Option nicht wählen und vor dem Start der einzelnen Adapter die IP-Adressen gegebenenfalls anpassen.
Nach dem speichern können über den Button „Backups abrufen“ die vorhandenen Backups auf dem lokalen Pfad abgerufen werden.
Nun sollte euer gerade per FTP kopiertes Backup in der Liste unter „iobroker“ auftauchen.
Dieses könnt ihr nun auswählen.
Nach der Auswahl bekommt ihr einen Hinweis, dass iobroker für den Restore gestoppt und im Anschluss wieder gestartet wird.

Hier habt ihr den eigentlichen Wiederherstellungsvorgang gestartet.

In eurem Browser öffnet sich nun ein weiterer Tab, in dem ihr den Wiederherstellungsprozess wie auf der Konsole im WebUI von Backitup verfolgen könnt.

Nachdem die Wiederherstellung erfolgreich abgeschlossen wurde, bekommt ihr die Meldung ebenfalls im WebUi des Restores.

Die Wiederherstellung kann je nach Leistung des Systems und Größe der alten ioBroker Installation etwas Zeit brauchen.
Im Normalfall sollte der restore nach ca. 10-15 Minuten erledigt und ioBroker automatisch wieder gestartet sein.
In ganz seltenen Fällen kommt es vor, dass ioBroker nicht automatisch nach Restore startet.
Falls dies der Fall ist, könnt ihr den iobroker manuell mit folgende Befehl über die Konsole starten.iobroker startNun sollte euer ioBroker wieder starten und ihr könnt im Reiter „Log“ sehen, dass alle Adapter, die auf eurem alten System installiert waren, gerade neu vom npm installiert werden.
Hier müsst ihr nun geduldig sein und iobroker einfach machen lassen.
In den Instanzen könnt ihr sehen, welche Adapter so nach und nach installiert sind.
Alle Adapter die noch bei der Installation bzw. in der Warteschleife sind, haben noch kein Icon in den Instanzen.
Seit hier bitte geduldig und lasst iobroker ohne neu zu starten einfach machen.Je nach Größe der Installation und Geschwindigkeit eures Rechners und der Internetverbindung kann dies locker 2-3 Stunden dauern.
Herzlichen Glückwunsch, nun habt ihr ein neu installiertes System mit all euren Einstellungen, Skripten, Visualisierungen usw.
Nun habt ihr mit Backitup noch die Möglichkeit weitere Daten wiederherzustellen, falls ihr diese im Vorfeld auch auf eurem alten System gesichert habt.
Ihr könnt die Redis-Datenbank, die Zigbee-Datenbank, die mySql-Datenbank und eure History-Daten mit den gleichen Schritten, wie oben beschrieben wiederherstellen.Die Liste der abgerufenen Backups würde dann wie hier im Beispiel aussehen.

2. manueller Restore mit den Terminal Befehlen
Als erstes müssen wir hier über Putty oder ähnliches ein paar Befehle absetzen
Als erstes erstellen wir einen Backup-Ordner:
sudo mkdir /opt/iobroker/backupsAuch hier müsst ihr im Anschluss mit einem sftp Programm wie z.B. FileZilla oder WinSCP euer auf dem alten System erstelltes Backup und gegebenenfalls auch Redis Backup, zigbee Backup usw. in den Ordner /opt/iobroker/backups ablegen.
Wer seine states und Objekte in der Redis DB speichert, sollte hier zuerst die gesicherte Redis Datenbank wiederherstellen.
Wer lediglich die states unter Redis laufen hat, braucht dies nicht zwingend im Vorfeld tun.Ist dies erfolgt, führt stoppt ihr euren ioBroker wie folgt:
iobroker stopIm Anschluss prüft bitte, ob alles gestoppt ist mit folgenden Befehlen:
iobroker statusWenn alle Ausgaben korrekt sind und iobroker gestoppt wurde, könnt ihr nun mit folgenden Befehlen den Restore über die Konsole ausführen:
cd /opt/iobroker iobroker restore <Dateiname eures Backups>Hierbei ist aber ganz wichtig, dass ihr nur ein ioBroker Backup mit dieser Methode wiederherstellen könnt. Ein Redis-Backup, Zigbee-Backup, mySql-Backup, oder die History-Daten könnt ihr mit dem Befehl nicht herstellen.
Hierfür wird Backitup benötigt, da diese speziell mit Backitup erstellt wurden.
Dies kann jetzt je nach System ein paar Minuten dauern.
Den Fortschritt seht ihr im Terminal.
Wenn der Restore abgeschlossen ist, könnt ihr mit folgenden Befehl ioBroker wieder starten:iobroker startAuch hier werden nun alle Adapter einzeln von ioBroker über npm neu installiert.
Dies kann je nach Größe eurer Installation, eurer Internetgeschwindigkeit und Leistung eures Systems eine Weile dauern.
Ihr könnt den Status im Reiter „Log“ verfolgen.Ihr habt es nun geschafft und euer System neu installiert und alle Einstellungen, Skripte, Visualisierungen usw. wiederhergestellt.
Fazit:
Grundsätzlich führen beide Varianten zum gleichen Ergebnis.
Wer wenig Erfahrungen mit terminal Befehlen hat und sich da unsicher fühlt, der ist mit Backitup auf der sicheren Seite.Wer allerdings genau sehen möchte, was gerade auf seinem System passiert, der sollte die manuelle Variante über die Konsole wählen. Hier sieht man jeden einzelnen Vorgang im Detail im Terminal.
Ich hoffe ich konnte für den einen oder anderen etwas Licht ins Dunkel bringen und freue mich auf euer Feedback.
VG
simatecHi @simatec
Ich verwende den Backup-Adapter und habe eine Nachfrage zum Zigbee-Backup: https://github.com/simatec/ioBroker.backitup/blob/master/docs/de/backitup.md#zigbee-backupIch verwende einen Conbee II Stick (USB) im Raspberry. In wie weit wird denn die Datenbank des Conbee II Stick gesichert? Oder ist das unter Zigbee-Backup hier nicht gemeint und gilt ausschliesslich für den Zigbee-Adapter?
Falls das so wäre, gibt es eine einfache Möglichkeit der Migration des Deconz Adapters zum Zigbee Adapter und migration der Datenpunkte?
Danke und Gruß
-
Hallo,
meine bisherige iobroker-Installation ist bereits einige Jahre alt, läuft aber noch problemlos. Backups werden mit Backitup täglich auf Fritz Nas erstellt. Ich möchte jetzt ein Restore nach dieser Anleitung auf eine neu erstellte iobroker Installation wiederherstellen. Habe das mit Backitup versucht und über die Konsole. In beiden Fällen kommt eine Fehlermeldung. Hier Auszug aus dem Log:
2022-04-01 14:33:19.759 - info: backitup.0 (1434) starting. Version 2.3.3 in /opt/iobroker/node_modules/iobroker.backitup, node: v14.19.1, js-controller: 4.0.21 2022-04-01 14:33:19.849 - error: backitup.0 (1434) [ERROR] [iobroker] host.iobroker Cannot extract from file "/opt/iobroker/backups/2022_03_27-03_00_10_backupiobroker.tar.gz" 2022-04-01 14:33:19.911 - info: backitup.0 (1434) [iobroker] backup was activated at 02:40 every 1 day(s)@schroedi64 sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Hallo,
meine bisherige iobroker-Installation ist bereits einige Jahre alt, läuft aber noch problemlos. Backups werden mit Backitup täglich auf Fritz Nas erstellt. Ich möchte jetzt ein Restore nach dieser Anleitung auf eine neu erstellte iobroker Installation wiederherstellen. Habe das mit Backitup versucht und über die Konsole. In beiden Fällen kommt eine Fehlermeldung. Hier Auszug aus dem Log:
2022-04-01 14:33:19.759 - info: backitup.0 (1434) starting. Version 2.3.3 in /opt/iobroker/node_modules/iobroker.backitup, node: v14.19.1, js-controller: 4.0.21 2022-04-01 14:33:19.849 - error: backitup.0 (1434) [ERROR] [iobroker] host.iobroker Cannot extract from file "/opt/iobroker/backups/2022_03_27-03_00_10_backupiobroker.tar.gz" 2022-04-01 14:33:19.911 - info: backitup.0 (1434) [iobroker] backup was activated at 02:40 every 1 day(s)Wie wurde das File in den Ordner kopiert und welche Rechte/User sind zugeordnet?
-
Hi @simatec
Ich verwende den Backup-Adapter und habe eine Nachfrage zum Zigbee-Backup: https://github.com/simatec/ioBroker.backitup/blob/master/docs/de/backitup.md#zigbee-backupIch verwende einen Conbee II Stick (USB) im Raspberry. In wie weit wird denn die Datenbank des Conbee II Stick gesichert? Oder ist das unter Zigbee-Backup hier nicht gemeint und gilt ausschliesslich für den Zigbee-Adapter?
Falls das so wäre, gibt es eine einfache Möglichkeit der Migration des Deconz Adapters zum Zigbee Adapter und migration der Datenpunkte?
Danke und Gruß
-
Hallo,
meine bisherige iobroker-Installation ist bereits einige Jahre alt, läuft aber noch problemlos. Backups werden mit Backitup täglich auf Fritz Nas erstellt. Ich möchte jetzt ein Restore nach dieser Anleitung auf eine neu erstellte iobroker Installation wiederherstellen. Habe das mit Backitup versucht und über die Konsole. In beiden Fällen kommt eine Fehlermeldung. Hier Auszug aus dem Log:
2022-04-01 14:33:19.759 - info: backitup.0 (1434) starting. Version 2.3.3 in /opt/iobroker/node_modules/iobroker.backitup, node: v14.19.1, js-controller: 4.0.21 2022-04-01 14:33:19.849 - error: backitup.0 (1434) [ERROR] [iobroker] host.iobroker Cannot extract from file "/opt/iobroker/backups/2022_03_27-03_00_10_backupiobroker.tar.gz" 2022-04-01 14:33:19.911 - info: backitup.0 (1434) [iobroker] backup was activated at 02:40 every 1 day(s)@schroedi64
Was ist das für ein Backup? Es ist nicht mit Backitup erstellt -
@schroedi64 sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Hallo,
meine bisherige iobroker-Installation ist bereits einige Jahre alt, läuft aber noch problemlos. Backups werden mit Backitup täglich auf Fritz Nas erstellt. Ich möchte jetzt ein Restore nach dieser Anleitung auf eine neu erstellte iobroker Installation wiederherstellen. Habe das mit Backitup versucht und über die Konsole. In beiden Fällen kommt eine Fehlermeldung. Hier Auszug aus dem Log:
2022-04-01 14:33:19.759 - info: backitup.0 (1434) starting. Version 2.3.3 in /opt/iobroker/node_modules/iobroker.backitup, node: v14.19.1, js-controller: 4.0.21 2022-04-01 14:33:19.849 - error: backitup.0 (1434) [ERROR] [iobroker] host.iobroker Cannot extract from file "/opt/iobroker/backups/2022_03_27-03_00_10_backupiobroker.tar.gz" 2022-04-01 14:33:19.911 - info: backitup.0 (1434) [iobroker] backup was activated at 02:40 every 1 day(s)Wie wurde das File in den Ordner kopiert und welche Rechte/User sind zugeordnet?
@wendy2702 Das File habe ich mit WinSCP in den Ordner kopiert. Keine Ahnung, welche Rechte/User zugeordnet sind. Wie finde ich das heraus?
-
@wendy2702 Das File habe ich mit WinSCP in den Ordner kopiert. Keine Ahnung, welche Rechte/User zugeordnet sind. Wie finde ich das heraus?
ls -la /opt/iobroker/backups -
@schroedi64
Was ist das für ein Backup? Es ist nicht mit Backitup erstellt@simatec Das Backup wurde mit Backitup erstellt. Allerdings mit Version 1.o.o oder so; daher mit "minimal" vorangestellt. Habe ich entfernt. Das Problem tritt aber auch auf, wenn ich das Backup per Konsole erstelle.
-
ls -la /opt/iobroker/backups@thomas-braun Sieht für mich jetzt so aus, dass Schreib/Leserechte dem User pi zugeordnet sind. Müsste ja wohl User iobroker sein. Wie ändere ich das?
-
@thomas-braun Sieht für mich jetzt so aus, dass Schreib/Leserechte dem User pi zugeordnet sind. Müsste ja wohl User iobroker sein. Wie ändere ich das?
@schroedi64 sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Sieht für mich jetzt so aus, dass Schreib/Leserechte dem User pi zugeordnet sind.
Und wie sieht es für deine Helfer aus?
-
@schroedi64 sagte in [HowTo] ioBroker Restore unter Linux durchführen:
Sieht für mich jetzt so aus, dass Schreib/Leserechte dem User pi zugeordnet sind.
Und wie sieht es für deine Helfer aus?
@thomas-braun Wenn ich wüsste, wie ich die Bilschirmausgabe der Konsole (Putty) hierhin kopieren kann ...
-
@thomas-braun Wenn ich wüsste, wie ich die Bilschirmausgabe der Konsole (Putty) hierhin kopieren kann ...
@schroedi64
Text markieren, Text kopieren, Text in CodeTags eingebettet hier ins Forum einfügen. -
@schroedi64
Text markieren, Text kopieren, Text in CodeTags eingebettet hier ins Forum einfügen.@thomas-braun pi@iobroker:~ $ ls -la /opt/iobroker/backups
total 2320
drwxrwxr-x+ 2 iobroker iobroker 4096 Apr 1 16:23 .
drwxrwxr-x+ 6 iobroker iobroker 4096 Mar 31 16:57 ..
-rw-rw-r--+ 1 pi pi 2365677 Apr 1 16:16 2022_04_01-16_16_37_backupiobroker.tar.gz -
@thomas-braun pi@iobroker:~ $ ls -la /opt/iobroker/backups
total 2320
drwxrwxr-x+ 2 iobroker iobroker 4096 Apr 1 16:23 .
drwxrwxr-x+ 6 iobroker iobroker 4096 Mar 31 16:57 ..
-rw-rw-r--+ 1 pi pi 2365677 Apr 1 16:16 2022_04_01-16_16_37_backupiobroker.tar.gzchown iobroker:iobroker /opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz -
@thomas-braun said in [HowTo] ioBroker Restore unter Linux durchführen:
chown iobroker:iobroker /opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz
Dann kommt bei mir : pi@iobroker:~ $ chown iobroker:iobroker /opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz
chown: changing ownership of '/opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz': Operation not permitted -
@thomas-braun said in [HowTo] ioBroker Restore unter Linux durchführen:
chown iobroker:iobroker /opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz
Dann kommt bei mir : pi@iobroker:~ $ chown iobroker:iobroker /opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz
chown: changing ownership of '/opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz': Operation not permitted@schroedi64
Dann setz noch ein sudo davor. -
@thomas-braun said in [HowTo] ioBroker Restore unter Linux durchführen:
chown iobroker:iobroker /opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz
Dann kommt bei mir : pi@iobroker:~ $ chown iobroker:iobroker /opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz
chown: changing ownership of '/opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz': Operation not permitted@schroedi64 Hat leider nicht geholfen
code_text ``` 2022-04-01 17:07:52.710 - info: backitup.0 (1528) starting. Version 2.3.3 in /opt/iobroker/node_modules/iobroker.backitup, node: v14.19.1, js-controller: 4.0.21 2022-04-01 17:07:52.822 - error: backitup.0 (1528) [ERROR] [iobroker] host.iobroker Cannot extract from file "/opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz" 2022-04-01 17:07:52.936 - info: backitup.0 (1528) [iobroker] backup was activated at 02:40 every 1 day(s) -
@schroedi64 Hat leider nicht geholfen
code_text ``` 2022-04-01 17:07:52.710 - info: backitup.0 (1528) starting. Version 2.3.3 in /opt/iobroker/node_modules/iobroker.backitup, node: v14.19.1, js-controller: 4.0.21 2022-04-01 17:07:52.822 - error: backitup.0 (1528) [ERROR] [iobroker] host.iobroker Cannot extract from file "/opt/iobroker/backups/2022_04_01-16_16_37_backupiobroker.tar.gz" 2022-04-01 17:07:52.936 - info: backitup.0 (1528) [iobroker] backup was activated at 02:40 every 1 day(s)@schroedi64
Kann natürlich sein, dass ein Backup aus Version 1 so anders ist, dass es mit V2 nicht gelesen werden kann. Hat sich ja einiges geändert inzwischen.