nslu2.jpgSeitdem ich stolzer Besitzer eines Linksys/Cisco NSLU2 bin (kleines NAS auf Linux-Basis, mit grosser Community und vielen Erweiterungsmöglichkeiten), hab ich ein Problem:

Wie bekomme ich ohne grossen Aufwand (am besten: OHNE Aufwand) meine Daten aufs NAS gesichert?

Die Lösung: Das NAS verbindet sich automatisch mit meinem PC und zieht sich die Daten selbst.

Das Backup wird dabei nicht einfach nur als dateiweise Kopie angelegt, sondern intelligent mit dem Linux Tool RSYNC synchronisiert.

RSYNC erkennt Änderungen (z.B. gelöschte Dateien) automatisch und sichert die geänderten Dateien in Datumsverzeichnisse. Lösche ich z.B. am 3. Juni 2007 die Datei BLOEDSINN.TXT, wird diese im Backup-Verzeichnis in den Unterordner /2007-06-03/ verschoben – und voila: Mein Backup-Verzeichnis (nennen wir es mal /CURRENT/) zeigt stets den aktuellen Stand – und alle geänderten Dateien sind in den jeweiligen Datumsordnern untergebracht.

Vorteile:

  • Änderungen werden automatisch registriert und geänderte/gelöschte Dateien in Unterordner mit dem Datum als Namen gesichert, z.B. in /2007-06-03/
  • Es ist stets der aktuelle Stand im Verzeichnis /CURRENT/ vorhanden
  • Das Backup zieht sich nur die Änderungen und ist daher sehr schnell
  • Es werden keine unnötigen Kopien erstellt und statt dessen Hardlinks erzeugt => keine Speicherverschwendung

Voraussetzungen:

  • Ein kleines NAS oder einen kleinen PC mit Linux und dem RSYNC Tool
  • Eine Verbindung zum Rechner mit den zu sichernden Daten (ggf. die Mount-Befehle ins Backup-Script eintragen)
  • Mein Backup Script (Download)

Um die ganze Sicherung zu automatisieren, hab ich ein kleines Script geschrieben (Download).

Einrichtung:

  1. Die zu sichernden Laufwerke müssen gemountet werden – d.h. in /etc/fstab eintragen und die Mountpoints unter /mnt/ erstellen, z.B.: für Windows-Freigabe //ninja/mp3
  2. Die Verzeichnisse fürs Backup einrichten, Script reinkopieren und Verzeichnisname im Script eintragen, z.B.: /var/backups/mp3/
  3. Eine excludes.lst im Backup-Verz. (z.B. /var/backups/mp3/excludes.lst) erzeugen – alle Datei/Verzeichnisnamen in dieser Datei werden dann beim Backup ignoriert, die Einträge erfolgen als ein Name pro Zeile
  4. Einen cron job zum automatischen Start des Backup-Scripts einrichten, z.B.: in crontab: „0 20 * * * /var/backups/backup_mp3.sh“ (jeden Tag um 20:00 Backup ausführen)
  5. Laufwerke mounten und loslegen 😉

Hier nochmal das Script zum Download – die zu ändernden Stellen sind im Script dokumentiert.

Automatische Backups aufs NAS mit RSYNC