Datenbestände auf verschiedenen Rechnern halten Sie mit Unison effizient synchron – bei Bedarf auch über eine verschlüsselte Verbindung.
Wer mehrere Rechner nutzt, steht früher oder später vor dem Problem, die Daten auf allen Systemen auf dem gleichen Stand halten zu müssen. Mit wachsender Datenmenge fällt diese Aufgabe zunehmend komplizierter aus – es sei denn, man setzt ein cleveres Hilfsprogramm wie Unison [1] ein: Das erledigt die Aufgabe zuverlässig und in beide Richtungen. Auch an den entsprechenden Komfort haben die Entwickler der Software gedacht – neben der Kommandozeilen-Variante steht eine grafische Oberfläche bereit.
Installation
Unison steht schon seit längerer Zeit bei allen Debian- und Ubuntu-basierten Distributionen in den Repositories bereit, so dass Sie es bei Bedarf bequem über Synaptic installieren. Hierzu suchen Sie das Paket unison-gtk, das die grafische Variante von Unison bereitstellt. Anwender von Red Hat, CentOS und Fedora finden passende Pakete auch für ältere Distributionsversionen im Netz [2], während Nutzer von Alt Linux, Mandriva und OpenSuse bei Rpmseek [3] nachschauen. Dort finden Sie teilweise Varianten des Tools für 64-Bit-Systeme.
Die Installationsroutine legt unter Gnome im Menü Anwendungen | Zubehör einen Starter an, der die Software allerdings im Usermodus aktiviert. Das führt unter Umständen – je nach Dateistruktur und zu sichernden Dateibeständen – aufgrund der Rechtevergabe zu Fehlern.
Damit die Synchronisation der Daten vollständig und ohne Fehlermeldungen klappt, sollten Sie Unison im Root-Modus starten. Sie bewerkstelligen das entweder durch eine Modifikation des Menüeintrags oder rufen mit [Alt]+[F2] ein Schnellstartfenster auf und aktivieren die Software mit gksu unison.
Erste Schritte
Unison benötigt zunächst die Information, welche Verzeichnisse zur Synchronisation anstehen. Diese führt die Software intern als Root 1 und Root 2 – nicht zu verwechseln mit dem User root und dessen Verzeichnis. Die Pfadangaben landen in einem Profil, und Unison überprüft darin beschriebene Dateistruktur (Abbildung 1).

Abbildung 1: Mit wenigen Angaben legen Sie fest, welche Daten Sie via Unison synchronisieren möchten.
Achten Sie bitte darauf, dass Sie die gewünschten Verzeichnisse beim Start der Software gemountet haben. Ansonsten bricht Unison den Vorgang mit einer entsprechenden Fehlermeldung ab. Neben lokalen Pfadangaben, also beispielsweise für externe, an Ihren Computer angeschlossene Festplatten oder Speicherkarten, dürfen Sie im Fenster root selection für den zu synchronisierenden Pfad auch die Daten für entfernte Rechner eingeben. Zusätzlich definieren Sie, ob Sie diese per SSH oder RSH ansprechen wollen. Das setzt allerdings eine entsprechende Client/Server-Infrastruktur auf den beteiligten Computern voraus.
Die meisten aktuellen Distributionen packen den SSH-Client automatisch bei der Erstinstallation des Betriebssystems mit auf die Platte, so dass Sie in aller Regel lediglich auf der entfernten Maschine den SSH- oder RSH-Server zu installieren brauchen. Bei funktionierender SSH-Verbindung müssen Sie noch den Host sowie den User (sofern dieser nicht identisch mit demjenigen auf Ihrem Rechner ist) und den zu synchronisierenden Pfad angeben.
Über den Radiobutton Socket haben Sie zudem die Möglichkeit, einen Kommunikationskanal von Ihrem Unison-Client aus zu einem entfernt arbeitenden Unison-Server zu öffnen. Das setzt aber voraus, dass Sie diesen auf dem entfernten Rechner auf der Kommandozeile durch Eingabe des Befehls unison -socket Portnummer starten. Auf Ihrem Client müssen Sie im Fenster root selection neben der Host-IP des Servers und dem Synchronisationspfad auch den entsprechenden Port angeben.
Diese Arbeitsschritte wiederholen Sie für jedes einzelne Profil. Beim erneuten Aufruf des Programms zeigt die Software die Profile beim Start an, und Sie wählen eines davon per Mausklick aus. So synchronisieren Sie Daten auf verschiedenen Rechnern, ohne jedes Mal die grundlegenden Konfigurationsdaten umständlich, fehleranfällig und zeitraubend manuell einzugeben (Abbildung 2).

Abbildung 2: Über die Profile setzen Sie alle wichtigen Parameter für eine Synchronisation auf einen Schlag.
Um den Datenabgleich innerhalb eines Profils zu erledigen, überprüft Unison zunächst die Datenstruktur der angegebenen Verzeichnisse. Beim ersten Synchronisation dauert dies je nach Umfang der zu synchronisierenden Daten längere Zeit, da bei einem neuen Profil manchmal erhebliche Unterschiede bei den Datenbeständen auftreten.
Anschließend zeigt die Software im unteren Bereich des Arbeitsfensters zunächst die gefundenen Pfade und Unterverzeichnisse an und visualisiert in der Spalte Action durch Pfeil-, Kreuz- oder Fragezeichen-Symbole die Synchronisationswege: Die Pfeilsymbole zeigen an, in welche Richtung Unison die Daten schaufelt. Stimmen die Daten überein, zeigt das Programm ein rotes Fragezeichen.
Verzeichnisse, die für das Programm aufgrund fehlender Rechte außer Reichweite liegen, kennzeichnet es mit einem roten Kreuz. Zudem sehen Sie ganz links, ob es sich bei den aufgeführten Einträgen um eine Datei oder ein Verzeichnis handelt. Unter dem Arbeitsfenster befindet sich noch ein kleiner Bereich, der über die Datei- oder Verzeichniseigenschaften aufklärt – inklusive der vergebenen Rechte, Größe und letztem Änderungsdatum (Abbildung 3).

Abbildung 3: Im Hauptfenster zeigt Unison übersichtlich die Aktionen für die ausgewählten Datenbestände an.
Gleichmacherei
In der über dem Anzeigebereich befindlichen Leiste mit den großen Schaltflächen starten Sie nun die gewünschte Aktion: Ein Klick auf den Button Go führt alle aufgeführten Dateiübertragungen in einem Rutsch aus. Sie können jedoch die Synchronisation auch beeinflussen, indem Sie beispielsweise Verzeichnisse ausnehmen. Klicken Sie dazu auf das gewünschte Verzeichnis oder die entsprechende Datei und wählen Sie anschließend in der Buttonleiste die Schaltfläche Skip aus. Es erscheint in der Rubrik Action in der betreffenden Zeile ein Fragezeichen.
Möchten Sie versehentlich deaktivierte Daten wieder in die Synchronisation einbeziehen, so klicken Sie diese erneut an und legen in der Buttonleiste durch einen Klick auf die Schaltflächen Left to Right oder Right to Left die Richtung des gewünschten Datenabgleichs fest.
Ein Klick auf die Schaltfläche Go stößt den Transfer der Daten an, wobei das Programm den Verlauf in der Spalte Status im Arbeitsfenster in Prozentangaben zeigt. Dieser Vorgang dauert je nach Umfang der zu synchronisierenden Daten eine Weile. Den erfolgreichen Abgleich zeigt die Applikation durch ein grünes Häkchen an (Abbildung 4).
Auswahl
Möchten Sie einzelne Dateien oder Verzeichnisse dauerhaft von der Synchronisation ausschließen, so bietet Unison im Menü Ignore oben im Arbeitsfenster verschiedene Optionen, um entweder ganze Verzeichnisbäume oder gezielt einzelne Dateien (anhand des Namens oder aufgrund der Endung) von der Replikation auszunehmen. Klicken Sie dazu in der Dateiliste zunächst auf den zu justierenden Dateneintrag und wählen Sie anschließend im Menü Ignore das gewünschte Ausschlusskriterium.
Da Unison nicht gestattet, Änderungen an einem Profil mithilfe einer Undo-Funktion zu revidieren, müssen Sie – beispielsweise um Pfade wieder zurück zu ändern oder Ausschlusskriterien wieder aufzuheben – zum Texteditor greifen und die entsprechende Konfigurationsdatei von Hand bearbeiten. Unison legt in Ihrem Home-Verzeichnis ein verstecktes Unterverzeichnis mit dem Namen .unison an, in dem es die Profile lagert.
Bei den Dateien mit der Endung .prf handelt es sich um reine Textdateien, die Sie problemlos mit jedem Editor bearbeiten. Da alle Angaben im Klartext vorliegen, fällt es leicht, beispielsweise Ausschlusspfade zu revidieren: Entfernen Sie dazu einfach die entsprechende Textzeile, die mit dem Schlüsselwort ignore beginnt. Auf die gleiche Art und Weise modifizieren Sie bei Bedarf die Synchronisierungspfade.
Backup-Tool
Unison eignet sich nicht nur zur Synchronisation von Daten und Pfaden, sondern gleichermaßen auch als Backup-Tool. Auch dafür fällt jedoch Handarbeit in der jeweiligen Profildatei an. Möchten Sie beispielsweise alle Audiodateien mit dem Suffix .ogg in einem eigenen Backup sichern, fügen Sie der Profildatei mit einem Texteditor die Zeile backup = Name *.ogg hinzu. Unison durchforstet beim nächsten Profillauf die Verzeichnisse und sichert alle Ogg-Dateien gesondert ins Verzeichnis .unison/backup.
Möchten Sie einen ganzen Verzeichnisbaum sichern, so tragen Sie in die entsprechende Profildatei die Zeile backup = Name * ein. Wollen Sie die Backups nicht im Standardverzeichnis speichern, sondern in einen eigens dazu angelegten Ordner, dann teilen Sie Unison das mit der Zeile backupdir = Pfad/zum/Verzeichnis mit.
Auf die gleiche Weise und mit ähnlicher Syntax legen Sie auch die maximale Anzahl zu behaltender Backup-Versionen sowie diverse Ausschlusskriterien fest. Ein umfangreiches Handbuch zu den außerordentlich zahlreichen Optionen von Unison in englischer Sprache findet sich auf der Unison-Website [4].
Konfliktpotenzial
Als plattformübergreifendes Synchronisierungsprogramm berücksichtigt Unison auch funktionale Einschränkungen von Betriebssystemen. So erlauben beispielsweise die diversen Betriebssysteme der Firma Microsoft bestimmte Zeichen in Dateinamen nicht. Synchronisieren Sie Daten zwischen einer Linux-Maschine und einem Windows-Rechner, kommt es hier zu Problemen.
Ein weiterer Stolperstein liegt in der Tatsache begründet, dass einige Microsoft-Betriebssysteme keinen Unterschied zwischen Groß- und Kleinbuchstaben im Dateinamen machen. Während also auf einem Linux-Rechner zwei unterschiedliche Dateien unter den Namen DATEI und datei vorhanden sein dürfen, ist das auf der Microsoft-Seite nicht immer möglich. Findet Unison beim Synchronisieren solche Dateinamen, gibt es eine Meldung aus. Sie können dann entweder die betroffene Datei Windows-kompatibel umbenennen oder die Warnmeldung ignorieren. Unsion synchronisiert die Datei dann schlicht nicht.
Die Software legt standardseitig ein Protokoll aller Aktivitäten an, das auch fehlgeschlagene Synchronisierungsläufe aufzeichnet. Die entsprechende Datei namens unison.log finden Sie in Ihrem Home-Verzeichnis. Möchten Sie die Log-Funktionen ausschalten, so erledigen Sie das mit einem entsprechenden Eintrag in der gewünschten Profildatei. Das ermöglicht eine sehr feine Justage der Logging-Funktion, sodass Sie keinen unnötigen Speicherplatz durch überbordendes Protokollieren verlieren.
Fazit
Mit Unison haben Sie ein leistungsfähiges Programm zum Abgleich von Datenbeständen an der Hand. Als interessantestes Merkmal sticht die Fähigkeit hervor, in einem Durchlauf in beide Richtungen zu synchronisieren. Es ist also nicht nötig, wie bei vielen vergleichbaren Programmen die Synchronisation von der Maschine mit den jeweils aktuellsten Datenbeständen aus zu starten.
Zudem bietet sich Unison aufgrund der Möglichkeit, entfernte Systeme miteinander abzugleichen, für den Einsatz im Netz an. Entsprechende Warnfunktionen machen die Software fit für den plattformübergreifenden Einsatz. Die grafische Oberfläche gefällt durch einfache Bedienbarkeit.
Stehen jedoch komplizierte Angleichungen von Datenbeständen an, führt am manuellen Bearbeiten der Profildateien kein Weg vorbei. Dafür entlohnt die Software mit vielen Optionen. Zu guter Letzt gefällt das Programm durch zügige Arbeitsweise, hohe Stabilität und geringen Ressourcenverbrauch. Deswegen sollte Unison auf keiner Maschine fehlen, deren Datenbestand Sie regelmäßig abgleichen wollen.
Infos
[1] Unison: http://www.cis.upenn.edu/~bcpierce/unison/
[2] Alternativ-Pakete für Fedora, Red Hat, CentOS: http://dag.wieers.com
[3] Download für weitere RPM-basierte Distributionen: http://www.rpmseek.com
[4] Online-Handbuch: http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html







Basics nötig:
möchte zuerst die ganze DIR auf den 2-ten PC verschieden und später nur den Abgleich durchführen
Q.: ist SSH im eigenem Netz zwischen 2 PCs (1: m4c, 2: m6c) nötig oder geht es auch ohne SSH ?
??: unison /home/miro/Infos ohneSSH://m4c:192.168.0.15//home/miro/Infos/