Trotz des Einsatzes eines NAS ist es natürlich zwingend erforderlich regelmäßig die Daten zu sichern. Synology bietet bereits unter DSM eine eigene Backuplösung an. Des Weiteren gibt es auch ein Add-on-Paket namens Time Backup (deu: Datensicherungszeit) von Synology als Datensicherungslösung. Leider haben mir beide Lösungen aus unterschiedlichsten Gründen nicht wirklich gefallen.
Um nur einige zu nennen:
– Abhängigkeit des Herstellers
– Beschränkung der Anzahl der Datensicherungsaufgaben (je nach NAS-System)
– Dateisystembeschränkungen der Backup-Software (z. B. bei NTFS)
– Backup in Unterordner
– Komprimierung der Daten
usw…..
Deshalb habe ich mich dazu entschlossen, ein eigenes kleines Shell-Script zu basteln, mit dem ich meine Daten vom NAS auf eine externe Festplatte sichern kann. Natürlich wollte ich euch das Script nicht vorenthalten, vielleicht kann es der eine oder andere gebrauchen.
ANFORDERUNGEN
Damit das Script funktioniert sind folgende Programme notzwendig
– RSYNC: Führt die Backupaufgabe durch
– NAIL: Versendet die Status-Mails
– TAR mit GZIP: Komprimiert die zu sichernden Dateinen
KONFIGURATION
Bevor das Backup über dieses Script gestartet werden kann muss noch einiges konfiguriert werden.
backup-script.sh
Dies ist das eigentliche Backup-Script in dem folgende Einstellungen vorgenommen werden müssen:
- ROOT_DIR: Hier muss der Pfad für den Haupt-Backup-Ordner eingetragen werden
- MAIL_TO: E-Mailadresse zu der die Statusmails versendet werden sollen
backup-script-files.properties
In diesem Script werden die Pfade eingetragen, die gesichert werden sollen.
Die Struktur dieser Datei muss wie folgt aussehen.
#SOURCE PATH | BACKUP PATH | OPTIONS (OPTIONAL) [weekly] /volume1/apps/ | apps | compress
Die einzelnen Parameter wurden durch das Pipe-Zeichen „|“ getrennt.
/volume1/apps/
Quell-Ordner welcher komplett gesichert werden soll
apps
Backup-Ordner relativ zum Haupt-Backup-Ordner in dem der Qull-Ordner gesichert wird
compress
Dieser optionale Parameter bewirkt, dass der Ordner als komprimiertes tar.gz Archiv abgespeichert wird.
Die Ordner können in 3 Bereiche aufgeteilt werden:
[daily] [weekly] [monthly]
Je nachdem mit welchem Startparameter das Backup-Script gestartet wird, werden nur die entsprechenden Ordner der einzelnen Bereiche gesichert.
Somit können dann z. B. über Cronjobs täglich, wöchentlich und monatlich unterschiedliche Ordner gesichert werden
Status-Mails
Status-Mails werden über Nail versendet! Dies muss auf dem System installiert sein
siehe: Synology Diskstation – Mails über SMTP per Konsole versenden (mittels Nail)
Script starten
Um das Backup-Script zu starten muss die SH Datei mit dem entsprechenden Startparmeter gestartet werden.
./backup-script.sh weekly
Um die Ausgabe zusätzlich direkt in eine Log-Datei zu schreiben kann folgender Aufruf-Befehl verwendet werden.
./backup-script.sh weekly >> /var/log/backup-script-weekly.log 2>&1
Dies ist z. B. dann sinnvoll, wenn das Script über einen Cronjob gestartet wird.
Script herunterladen
Diskstation RSync Backup Script – Version 1.0.0