October 29, 2007

Synchronisation von Verzeichnissen mittels Unison

Immer wieder stehe ich vor dem Problem, dass ich die Inhalte von zwei Verzeichnissen synchronisieren muss. Ob das die Synchronisation von einem USB-Stick und einem Rechner ist oder zwischen zwei Rechnern. Diese Situationen stellen sich häufiger als man denkt. Die alte Lösung war die manuelle Synchronization, wobei man teilweise überhaupt keine Ahnung hat, was nun alles kopiert werden muss und vor allem von wo nach wo.

Eine Lösung des Problems fand sich mit der Anwendung Unison. Das Tool ist für alle Plattformen verfügbar und wird über Profile gesteuert. So kann beispielsweise eine Profil zur Synchronisation mit einem USB-Stick erstellt werden. Unter Linux Systemen legt man diese Profildateien (*.prf) im Ordner .unison im Home-Verzeichnis ab.
# synchronization folders
root = /home/micha
root = /media/USB

# Non-conflicting changes will be propagated; conflicts will be skipped
batch = true

# ignored sources
ignore = Path tmp

# needed for sync with FAT disks
perms = 0

Eine Besonderheit bei FAT formatierten USB-Sticks ist die Konfigurationseinstellung perms=0, da FAT keine Berechtigungsstrukturen unterstützt.

Daneben lassen sich Verzeichnisse auch über SSH synchronisieren.
# synchronization folders
root = /Users/micha/Documents
root = ssh://192.168.1.2//home/micha/

# Non-conflicting changes will be propagated; conflicts will be skipped
batch = true

# ignored sources
ignore = Path tmp

Gestartet wird Unison beispielsweise in der Konsole über unison profilName (weitere Informationen in der Manual von Unison).

No comments:

Post a Comment