Wie synchronisiert man Verzeichnisse mit rsync?
Unter UNIX-Derivaten wie OSX kann man mit relativ einfachen Mitteln Datenspieglungen erstellen oder Verzeichnisse abgleichen. Die Tilde (~) steht hier als Variable für den Benutzernamen. Apple verfügt hier über eine angepasste Version von Rsync, die auch Resource Forks beachtet. Ein einfacher Aufruf über das Terminal wäre z.B.:
rsync --archive -u ~/Library/Mail ~/Backup/
Damit würden von allen Emails des aktiven Benutzers aus Apple Mail Sicherungskopien im Benutzerverzeichnis unter Backup erstellt. Wie man unter OSX einen launchd-Daemon einrichtet erfahren Sie hier.
Ein Beispiel für ein Shellskript mit Variablen könnte in etwa so aussehen:
#!/bin/bash # Rsync Backup Script - Erstellt exakte Spieglungen # Designstudio, Philipp Speck - www.destio.de # Copyright (C) 2010 Designstudio, Philipp Speck # Quelle source="/Volumes/Intern"; # Ziel destination="/Volumes/Sicherung/"; # Befehl rsync --archive --delete -v -u $source $destination
Über das Hinzufügen weiterer Variablen lassen sich auch komplexere Backups und Datenspieglungen realisieren. Hängt man als Dateiendung statt dem standardmäßigen .sh ein .command an, ist das Skript auch über einen Doppelklick direkt ausführbar.
Die im Skript verwendeten Optionsschalter sind:
- -u Aktualisiert nur geänderte Daten der Quelle im Ziel
- -v Gibt den Synchronisierungsprozess im Terminalfenster aus
- –delete Löscht Dateien und Ordner, die in der Quelle nicht mehr vorhanden sind
- –archive steht für rekursiven Datenabgleich und sorgt dafür, dass die Dateiattribute, Zeitstempel, Rechte usw. erhalten bleiben
Download
Rsync Backup Script.zip
(nur für Apple Mac OSX geeignet)
Note: Das Skript funktioniert nur bei bereits ins Dateisystem eingehängten Laufwerken. Bei externen Datenträgern oder Netzwerkvolumes, die nicht vorhanden oder gemountet sind, bricht das Skript mit einer Fehlermeldung ab. Man beachte außerdem, dass ein gesetzter Slash am Ende eines Dateipfades zu unterschiedlichen Ergebnissen führt. Natürlich sollten die Dateiberechtigungen des Skripts auch so gesetzt sein, dass es ausführbar ist.
Tags: Backup Script | Rsync









