ioBroker Backup auf Synology NAS
In diesem Artikel zeige ich Dir, wie Du von Deiner ioBroker Instanz ein Backup auf ein Synology NAS erstelle kannst.
Mittlerweile gibt es verschiedene Möglichkeiten ein Backup des ioBroker-Systems zu erstellen. Von fertigen Skripten bis zum fertigen Adapter. Ich habe mich bewusst für diesen Weg entschieden, da ich so am besten in den Prozess der Sicherung eingreifen kann, und diesen mit zusätzlicher Logik versehen kann.
Eingesetztes NAS und Festplatte:
Synology DS218J 2 Bay Desktop-NAS-Gehäuse
Preis: ---
WD Red 2TB 3.5" NAS Interne Festplatte - 5400 RPM - WD20EFRX
Preis: 124,95 €
ioBroker Backup erstellen
Um ein Backup zu erstellen müssen wir uns zunächst am ioBroker Host System (Raspberry PI) anmelden (z.B. via Putty). Nach dem wir uns angemeldet haben wechseln wir in das ioBroker-Installationsverzeichnis.
cd /opt/iobroker iobroker backupNun wurde im Verzeichnis backups eine Sicherung der ioBroker Instanz erstellt. Die folgende Ausgabe zeigt die erstellt Sicherung per ls-Befehl:
Vorbereitungen und Freigabe in der Synology DiskStation
Nach dem wir nun erfolgreich ein Backup auf unserer ioBroker Instanz erstellt haben können wir im nächsten Schritt mit den Vorbereitungen des NAS beginnen. Hierzu öffnen wir die Systemsteuerung der DiskStation und wechseln auf den Bereich „Dateidienste“. Hier müssen wir die NFS (Network File System) Einstellung aktivieren und die Einstellungen über die Übernehmen Schaltfläche speichern.
Im nächsten Schritt öffnen wir den Bereich „Gemeinsamer Ordner“ und klicken auf „Erstellen“.
Auf der Ansicht können wir nun einen Namen und eine Beschreibung sowie den Speicherort des Ordners festlegen. Zudem sollte hier die Einstellung „Zugriff auf ausschließlich Administratoren beschränken“ deaktivieren.
Nach dem wir den neuen Ordner angelegt haben können wir nun die entsprechenden NFS-Berechtigungen vergeben. Dazu markieren wir den Ordner „backup“ in der Liste und klicken auf „Bearbeiten“.
In der Bearbeitungsansicht im Bereich NFS-Berechtigungen können wir nun eine neue Berechtigungen für den Zugriff auf den Ordner anlegen. Dazu klicken wir auf die Schaltfläche „Erstellen“.
Auf der Ansicht können wir hier eine NFS-Regel für den Zugriff auf den Ordner anlegen. In meinem Beispiel möchte ich nur dem ioBroker Hostsystem lesen und schreibenden Zugriff auf den Ordner gewähren.
Damit sind die Einstellungen in der DiskStation soweit abgeschlossen. Wir können uns nun wieder auf dem ioBroker Hostsystem anmelden und hier mit der Einrichtung des Backups fortführen.
Skript für Sicherung, Laufwerk mounten und kopieren des neuesten Backups
Im ersten Schritt wechseln wir nun in das Home Verzeichnis und legen uns ein neues SH-Skript an. Mit dem Skript wird später das ioBroker Backup erstellt, das Netzwerklaufwerk gemountet und die neueste Sicherungsdatei auf die Netzwerklaufwerk (NAS) kopiert.
// In das Home Verzeichnis wechseln cd home // Skriptdatei anlegen touch iobroker_backup_nas.sh // Skriptdatei mit nano Editor öffnen nano iobroker_backup_nas.shNun öffnet sich der nano Editor, mit dem wir nun unser Skript für die Sicherung sowie das mounten kopieren des neuesten Backups erstellen können. Im Skript wechseln wir in das ioBroker Installationsverzeichns und führen zunächst die Sicherung aus. Im nächsten Schritt mounten (verbinden) wir uns mit dem Netzwerklaufwerk, sodass wir die erstellt Sicherung auf das Netzwerklaufwerk kopieren können. Im letzten Schritt wird die neueste Sicherung mit cp Befehl dann auf das Netzwerklaufwerk in das Verzeichnis „smarthome_iobroker“ kopiert. Den Editor können wir dann mit STRG+O (Speichern) und STRG+X (Beenden) schließen.
cd /opt/iobroker iobroker backup mount 192.168.2.50:/volume1/backup /mnt cd /opt/iobroker/backups cp $(ls -1t | head -1) /mnt/smarthome_iobrokerNach dem wir nun das Skript erstellt haben, können wir im nächsten Schritt die Berechtigungen für das Skript setzen. Diese sind notwendig, da wir ansonsten das Skript und somit die einzelnen Befehle nicht ausführen können.
// Berechtigungen für Ausführung des Scriptes erteilen cd /home chmod +x iobroker_backup_nas.shNun können wir das Skript mit folgendem Befehl ausführen und somit die Sicherung testen:
./iobroker_backup_nas.shEinrichtung des Cronjobs für die tägliche Durchführung der Sicherung
Wir wollen die Sicherung automatisch (zeitgesteuert) in regelmäßigen Abständen erstellen lassen. Dazu legen wir uns einen Crobjob an, der dies für uns erledigt.
crontab -eAn das Ende des Skripts fügen wir nun folgende Zeile an. Mit dieser Zeile wird jeden Tag um 5:00 Uhr das erstellt Sicherungsskript ausgeführt.
0 5 * * * /home/iobroker_backup_nas.shDen Editor können wir dann mit STRG+O (Speichern) und STRG+X (Beenden) schließen. Damit wurde der Cronjob angelegt und erstellt nun täglich die Sicherung.
Ich hoffe euch gefällt dieser Artikel. Über Kommentare unterhalb des Artikels oder per E-Mail freue ich mich wie immer ?
Hallo,
kurze Frage:
Wird bei der Sicherung auch Inhalte des vis-Editors (die Views) gesichert?
Also eigentlich lautet meine Frage, ob zu allen Instanzen auch die Inhalte gesichert werden?
Vielen Dank für die obige Anleitung. Würde mich über eine kurze Antwort freuen.
LG
Hallo Oli,
ja, VIS wird ebenfalls gesichert. Es gibt dazu eine extra JSON-Datei. Funktioniert perfekt, hatte durch eine blöde Änderung in VIS meine Views zerstört und konnte durch das Backup wieder zurück 🙂
Grüße,
Matthias
Ich hoffe, das ist jetzt keine blöde Frage. Ich folge manchen Anleitungen ohne tatsächlich komplett zu durchdringen, welche Prozesse dahinterstecken:
Ich habe nun eine Backup-Datei auf meiner Synology. Allerdings scheint dies eine .dmg-Datei zu sein. Die eigentlichen Backup-Dateien im opt-Ordner auf dem Pi sind gepackte Ordner mit Inhalt.
Habe ich etwas verkehr gemacht?
Eine DMG-Datei? Wie bist Du denn genau vorgegangen?
Wenn ich mich mit dem User pi und seinem Passwort auf dem Raspberry anmelde, fehlen mir einige Rechte zur Erstellung und Ausführung des Scripts.
Moin,
versuche es mal mit dem root Benutzer. Alternativ sudo davor 🙂
LG Matthias
Hallo,
erstmal vielen Dank für deine vielen Hinweise und Anleitungen hier zum IOBroker – hast mir den Umstieg von FHEM erleichtert.
In der Konfiguration der Backup-Instanz ist zumindest bei mir eine Zeit festgelegt. Wenn das jetzt über den Cronjob aus deiner Beschreibung angestoßen wird, wird dann das Backup nicht doppelt ausgeführt?
VG,