Dieser Beitrag ist schon sehr alt, und die Infos hier sind sicherlich hoffnungslos veraltet…
Datenbackup und -synchronisation unter UBUNTU
Unter OSX hab ich mit der teuren Software SynchronizePro! meine Daten zwischen den Maschinen synchronisiert. Unter Ubuntu geht das auch recht einfach, obwohl wir zunächst zwischen Backup und Synchronisation unterscheiden müssen. Erstere Variante sichert die Daten eines PCs auf eine andere Festplatte, wobei immer ein Abbild der PC-Platte auf die andere erfolgt. Zweitere synchronisiert die Daten zwischen zwei Verzeichnissen, wobei es egal ist, in welchem Verzeichnis Daten verändert, ergänzt oder gelöscht wurden. Für Backups steht unter Ubuntu standardmäßig das Kommandozeilentool [rsync](http://wiki.ubuntuusers.de/rsync)
zur Verfügung, dessen graphischer Oberfläche Grsync
per
sudo apt-get install grsync
nachinstalliert werden kann.
Zum Synchronisieren verwendet man besser [unison](http://wiki.ubuntuusers.de/unison)
, welches auch über eine graphische Oberfläche unison-gtk
verfügt. Diese Tools müssen allerdings erst installiert werden per
sudo apt-get install unison unison-gtk
Ich synchronisiere hier die Daten von einem Ubuntu-Laptop zu einem Ubuntu-Desktop. Da beide Rechner im selben lokalen Netz hängen, soll der Datenabgleich per ssh erfolgen, da diese Methode wesentlich schneller abläuft als z.B. per SAMBA-Freigabe (Möchte man aber plattformübergreifend synchronisieren, z.B. zwischen Ubuntu und Mac OSX, so wird es mit der ssh
-Methode Probleme bei Dateien geben, bei denen Umlaute im Dateinamen enthalten sind. Hier muss dann doch auf SAMBA zurückgegriffen werden).
Backup
Es empfiehlt sich, zunächst ein Backup per rsync
von Ordner 1 auf Ordner 2 durchzuführen. Würde man direkt per unison
synchronisieren, würde unison
unzählige Fragen zur Übertragungsrichtung stellen. Dies spart man sich durch ein initiales Backup. Ich verwende beide Tools auf der Kommandozeile. Das initiale Backup erfolgt für meinen Dokukmentenordner so:
rsync -avze ssh /Pfad/zu/Dokumente/ USER@IP:/Pfad/zu/Dokumente
Hierdurch wird der Inhalt des Ordners Dokumente
per ssh auf den PC mit der IP IP
gespiegelt. Selbstredent müssen USER
und IP
sowie die Pfade entsprechend angepasst werden. Wichtig ist, dass beim Quellordner ein zusätzliches Slash verwendet wird (Dokumente/
) und beim Zielordner nicht.
Synchronisation
Nachdem das initiale Backup angelegt wurde, kann nun endlich unison
zum weiteren Datenabgleich verwendet werden. Der Standardaufruf zum synchronisieren per shh lautet:
unison /pfad/fuer/sync1 ssh://USER@IP//pfad/fuer/snyc2
Bei mir also
unison /home/produnis/Dokumente ssh://produnis@192.168.0.2//home/produnis/Dokumente
Anders als bei rsync
darf hier kein Slash hinter die Quell- und Zielordner geschrieben werden.
Fertig.
Unison rattert nun durch die Verzeichnisse und fragt im Zweifelsfall nach, was denn getan werden soll. Das sieht auf der Konsole in etwa so aus:
Ordner 1 Ordner 2
new file -----> test.txt [f]
changed -----> foo.bar [f]
Das [f]
steht hierbei für “follow unisons recommendation”, was soviel bedeutet wie “jaja, mach das mal so wie du meinst”. In dem Beispiel oben bedeutet dies, dass die Datei “text.txt” von Ordner1 nach Ordner2 kopiert wird. Man kann nun entweder das [f]
per RETURN-Taste bestätigen, oder aber die Richtung ändern. Hierbei verwendet man >
und <
, wobei die beiden Zeichen als Symbole der Kopier-Richtungen gedeutet werden. Ein <
würde von Ordner2 nach Ordner1 syncen, ein >
entsprechend von Ordner1 nach Ordner2.
Wer keine Lust hat ständig RETURN zu drücken, oder aber wer unison
grenzenlos vertraut, der kann den Sync-Befehl auch so aufrufen, dass unison automatisch und ohne Rückfragen alle Änderungen “nach bestem Gewissen” durchführt. Hierfür wird einfach die Option “-auto
” angehängt, in meinem Fall also
unison /home/produnis/Dokumente ssh://produnis@192.168.0.2//home/produnis/Dokumente -auto