Open Source im professionellen Einsatz

Synchronisation mit Unison und Conduit

Der Klassiker: Unison - der Nachwuchs: Conduit

,

Warum Dateien herumschubsen, wenn es auch einfach geht? Mit Unison und Conduit lassen sich Dokumente und Dateien in verteilten Systemen auf dem gleichen Stand halten. Conduit kann sogar Dateien von Internetdiensten synchronisieren. Der Kleine muss aber noch wachsen.

Dokumente und Dateien auf verschiedenen Rechnern synchron zu halten ist nicht trivial - verschiedene Faktoren sorgen dafür. Oft sind sie nicht nur auf Desktop-Rechnern und Laptops verteilt, sondern auch über verschiedene Web-Anwendungen wie Flickr oder Gmail. Mit der Verbreitung von tragbaren Geräten und Live-CDs ist ein Rechner oft außerdem nicht nötig: Viele Anwender bevorzugen USB-Sticks oder externe Festplatten als dauerhaften Speicherort. Ein verlässliches Synchronisationstool avanciert damit zu einem Must-have. Rsync ist zwar die beliebteste Synchronisationsanwendung, und sie ist ziemlich schlau: Siehe den online verfügbaren Artikel „Recycling-Meister“ über den Rsync-Algorithmus im Linux-Magazin 08/2007. Es gibt aber Alternativen, die ebenso nützlich oder sogar besser sind.

Der Alte: Unison

Die meisten Distributionen enthalten Unison in ihren Repositories, so dass die Installation kein Problem darstellt. In Ubuntu zum Beispiel tut es das Kommando „sudo apt-get install unison-gtk“. Die aktuelle Version ist 2.27.57.

Bei Unison kommen Konsolenfans auf ihre Kosten, aber es verfügt auch über ein grafisches Interface. Obwohl das Interface ein wenig dürr anmutet, bietet es Zugriff auf die meisten Unison-Features. Wenn der Benutzer das GUI zum ersten Mal aufruft, wird er aufgefordert ein Synchronisationsprofil anzulegen. Hierbei sind die Pfade zu den Verzeichnissen gefragt, die synchron gehalten werden sollen. Unison prüft dann beide Verzeichnisse und listet die Dateien auf, die sich unterscheiden. Die „Go“-Schaltfläche löst die Synchronisation aus.

So sieht das grafische Interface von Unison aus.

So sieht das grafische Interface von Unison aus.

Zusätzlich zu dieser recht simplen Grundfunktion bietet das Programm einige fortgeschrittene Funktionen, zum Beispiel einen mächtigen und flexiblen Mechanismus zum Konfliktmanagement. Nachdem Unison die Verzeichnisse gescannt hat, kann der Benutzer in dem Menü „Actions“ spezifizieren, wie das Programm mit Konflikten umgehen soll. Die Konflikte können beispielsweise zu Gunsten des ersten oder des zweiten Verzeichnisses gelöst werden. Die Änderungen in einem Verzeichnis können einem anderen Verzeichnis auch aufgezwungen werden.

Versiert automatisieren

Es wäre wenig elegant, bei jedem Start von Unison die Programm-Einstellungen manuell von neuem vornehmen zu müssen. Unison bietet stattdessen an, mehrere Profile anzulegen. Für jedes Profil kann der Benutzer eine .prf-Datei mit den Einstellungen in dem Verzeichnis ~/.unison erstellen. Wenn zum Beispiel ein Benutzer sein Firefox-Profil auf zwei verschiedenen Maschinen synchron halten will, erstellt er eine Textdatei namens „firefox.prf“ und legt die Pfade zu den Verzeichnissen „.mozilla“ auf beiden Rechnern fest, also dem lokalen und dem entfernten:

root = /home/user/.mozilla
root = ssh://remotehost/home/.mozilla

Unison-Synchronisation via SSH ist also möglich – ein Sicherheits-Feature, um entfernte Rechner zu synchronisieren. Das Programm bietet viele weitere Optionen der Synchronisation, die in der Pref-Datei festgehalten werden. Zum Beispiel hat das Setzen von „batch=true“ zur Folge, dass die Synchronisation ohne Einmischung des Benutzers vor sich geht. Ähnlich einfach ist es Unison zu zwingen, Versionskonflikte zu Gunsten der neueren Datei zu lösen: „prefer=newer“ hat diesen Effekt. Wenn Unison die letzte Zugriffszeit einer Datei beibehalten soll, kann der Benutzer „times=true“ setzen. Die Datei wird am Ende in etwa so aussehen:

root = /home/user/.mozilla
root = ssh://remotehost/home/.mozilla
batch=true
prefer=newer
times=true

Liegt diese Pref-Datei im Verzeichnis „~/.unison“, synchronisiert Unison die Firefox-Profile mit dem Kommando „unison firefox“. Das ist nur ein kleines Beispiel. Das Handbuch enthält alle Möglichkeiten dieses exzellenten Synchronisations-Tools.

Diesen Artikel als PDF kaufen

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook