Unison: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Wechseln zu: Navigation, Suche
(Neubearbeitung fertig)
(typos)
Zeile 1: Zeile 1:
 
Mit Unison ist es möglich Dateien und Verzeichnisse zwischen Rechnern oder auch Datenträgern zu synchronisieren. Dabei überprüft Unison vor der eigentlichen Datenübertragung, ob überhaupt Änderungen vorliegen, wodurch das Programm sehr schnell arbeitet. Des Weiteren ist die Datenübertragung sicher, da [[SSH]] zum Einsatz kommen kann.
 
Mit Unison ist es möglich Dateien und Verzeichnisse zwischen Rechnern oder auch Datenträgern zu synchronisieren. Dabei überprüft Unison vor der eigentlichen Datenübertragung, ob überhaupt Änderungen vorliegen, wodurch das Programm sehr schnell arbeitet. Des Weiteren ist die Datenübertragung sicher, da [[SSH]] zum Einsatz kommen kann.
  
Unison ist für Unix-artige Betriebssysteme und Windows verfügbar, wird jedoch nicht mehr aktiv weiterentwickelt. Das Programm ist jedoch stabil und ausgereift.
+
Unison ist für Unix-artige Betriebssysteme und Windows verfügbar, wird aber nicht mehr aktiv weiterentwickelt. Das Programm ist jedoch stabil und ausgereift.
  
 
== Installation ==
 
== Installation ==
Zeile 8: Zeile 8:
 
  pacman -S unison
 
  pacman -S unison
  
Außerdem empfiehlt es sich, sofern eine Synchronisation zwischen mehreren Computern erfolgen soll, Unison sowie SSH auf allen Rechnern zu installieren, da so die Datenübertragung sicher ist, die Synchronisation schneller erfolgt und keine Laufwerke eingehangen werden müssen.
+
Außerdem empfiehlt es sich, sofern eine Synchronisation zwischen mehreren Computern erfolgen soll, Unison, sowie SSH auf allen Rechnern zu installieren, da so die Datenübertragung sicher ist und die Synchronisation schneller erfolgt, da keine Laufwerke eingehangen werden müssen.
  
 
Des Weiteren werden grafische Oberflächen mitgeliefert, für die jedoch die Pakete <code>gtk</code> bzw. <code>gtk2</code> benötigt werden.
 
Des Weiteren werden grafische Oberflächen mitgeliefert, für die jedoch die Pakete <code>gtk</code> bzw. <code>gtk2</code> benötigt werden.
Zeile 15: Zeile 15:
 
Unison wird im Terminal gestartet. Außerdem gibt man den Quell- bzw. Zielpfad für die Erstsynchronisation an. Die Pfade können sowohl lokal, als auch entfernt (z.B. auf einem Server) vorhanden sein. Beispielhaft wird nun die Synchronisation eines lokalen Ordners mit einem entfernten Ordner per SSH gezeigt. Dies funktioniert jedoch nur, wenn auf beiden Rechnern SSH und Unison installiert sind.
 
Unison wird im Terminal gestartet. Außerdem gibt man den Quell- bzw. Zielpfad für die Erstsynchronisation an. Die Pfade können sowohl lokal, als auch entfernt (z.B. auf einem Server) vorhanden sein. Beispielhaft wird nun die Synchronisation eines lokalen Ordners mit einem entfernten Ordner per SSH gezeigt. Dies funktioniert jedoch nur, wenn auf beiden Rechnern SSH und Unison installiert sind.
  
  unison /pfad/zum/ordner ssh://foobar@example.com:X//pfad/zu/anderem/ordner (X steht für den SSH-Port, wenn er eine andere Nummer als 22 hat)
+
  unison /pfad/zum/ordner ssh://foobar@example.com:X//pfad/zu/anderem/ordner (:X steht für den SSH-Port, wenn er eine andere Nummer als 22 hat)
  
Die Pfade werden nun synchronisiert, wobei ersterer der Quellpfad und letzterer der Zielpfad ist. Es wird nun auf dem Quellrechner ein Profil erzeugt: <code>~/.unison/default.prf</code>. Dies sieht wie folgt aus.
+
Die Pfade werden nun synchronisiert, wobei ersterer der Quellpfad und letzterer der Zielpfad ist. Außerdem wird so auf dem Quellrechner ein Profil mit folgendem Pfad erzeugt: <code>~/.unison/default.prf</code>. Dies sieht wie folgt aus.
  
 
  root = /pfad/zum/ordner
 
  root = /pfad/zum/ordner
 
  root = ssh://foobar@example.com//pfad/zu/anderem/ordner
 
  root = ssh://foobar@example.com//pfad/zu/anderem/ordner
  
Das Profil kann nach belieben umbenannt werden, solange es im Ordner <code>~/.unison</code> bleibt und die Dateiendung beibehält.  
+
Das Profil kann nach Belieben umbenannt werden, solange es im Ordner <code>~/.unison</code> bleibt und die Dateiendung beibehält.  
  
 
  mv ~/.unison/default.prf ~/.unison/server.prf
 
  mv ~/.unison/default.prf ~/.unison/server.prf
Zeile 30: Zeile 30:
 
  unison server
 
  unison server
  
Für die lokale Synchronisation braucht man natürlich kein SSH. Es gibt außerdem noch die Methode der Netzwerksynchronisation über Sockets, die ist jedoch unsicher, da dabei lediglich unverschlüsselte TCP/IP-Pakete versand werden. Jedoch funktioniert diese Methode in einer Umgebung, in der SSH z.B. wegen einer Firewall, die SSH blockiert, nicht funktioniert (im Normalfall also immer). Der Befehl lautet dann wie folgt.
+
Für die lokale Synchronisation braucht man natürlich kein SSH. Es gibt außerdem noch die Methode der Netzwerksynchronisation über Sockets, diese ist jedoch unsicher, da dabei lediglich unverschlüsselte TCP/IP-Pakete versand werden. Allerdings läuft diese Methode auch in einer Umgebung, in der SSH z.B. wegen einer Firewall, die SSH blockiert, nicht funktioniert (im Notfall also immer). Der Befehl lautet dann wie folgt.
  
  unison /pfad/zum/ordner socket://example.com:X//pfad/zu/anderem/ordner (X steht für den TCP-Port)
+
  unison /pfad/zum/ordner socket://example.com:X//pfad/zu/anderem/ordner (:X steht für den TCP-Port)
  
 
=== Weitere Funktionen ===
 
=== Weitere Funktionen ===

Version vom 16. Februar 2011, 00:24 Uhr

Mit Unison ist es möglich Dateien und Verzeichnisse zwischen Rechnern oder auch Datenträgern zu synchronisieren. Dabei überprüft Unison vor der eigentlichen Datenübertragung, ob überhaupt Änderungen vorliegen, wodurch das Programm sehr schnell arbeitet. Des Weiteren ist die Datenübertragung sicher, da SSH zum Einsatz kommen kann.

Unison ist für Unix-artige Betriebssysteme und Windows verfügbar, wird aber nicht mehr aktiv weiterentwickelt. Das Programm ist jedoch stabil und ausgereift.

Installation

Unison befindet sich in extra und kann daher mit Pacman installiert werden.

pacman -S unison

Außerdem empfiehlt es sich, sofern eine Synchronisation zwischen mehreren Computern erfolgen soll, Unison, sowie SSH auf allen Rechnern zu installieren, da so die Datenübertragung sicher ist und die Synchronisation schneller erfolgt, da keine Laufwerke eingehangen werden müssen.

Des Weiteren werden grafische Oberflächen mitgeliefert, für die jedoch die Pakete gtk bzw. gtk2 benötigt werden.

Benutzung

Unison wird im Terminal gestartet. Außerdem gibt man den Quell- bzw. Zielpfad für die Erstsynchronisation an. Die Pfade können sowohl lokal, als auch entfernt (z.B. auf einem Server) vorhanden sein. Beispielhaft wird nun die Synchronisation eines lokalen Ordners mit einem entfernten Ordner per SSH gezeigt. Dies funktioniert jedoch nur, wenn auf beiden Rechnern SSH und Unison installiert sind.

unison /pfad/zum/ordner ssh://foobar@example.com:X//pfad/zu/anderem/ordner (:X steht für den SSH-Port, wenn er eine andere Nummer als 22 hat)

Die Pfade werden nun synchronisiert, wobei ersterer der Quellpfad und letzterer der Zielpfad ist. Außerdem wird so auf dem Quellrechner ein Profil mit folgendem Pfad erzeugt: ~/.unison/default.prf. Dies sieht wie folgt aus.

root = /pfad/zum/ordner
root = ssh://foobar@example.com//pfad/zu/anderem/ordner

Das Profil kann nach Belieben umbenannt werden, solange es im Ordner ~/.unison bleibt und die Dateiendung beibehält.

mv ~/.unison/default.prf ~/.unison/server.prf

Möchte man nun die gleichen Ordner ein zweites mal synchronisieren, reicht folgender Befehl.

unison server

Für die lokale Synchronisation braucht man natürlich kein SSH. Es gibt außerdem noch die Methode der Netzwerksynchronisation über Sockets, diese ist jedoch unsicher, da dabei lediglich unverschlüsselte TCP/IP-Pakete versand werden. Allerdings läuft diese Methode auch in einer Umgebung, in der SSH z.B. wegen einer Firewall, die SSH blockiert, nicht funktioniert (im Notfall also immer). Der Befehl lautet dann wie folgt.

unison /pfad/zum/ordner socket://example.com:X//pfad/zu/anderem/ordner (:X steht für den TCP-Port)

Weitere Funktionen

In den Profildateien kann man zusätzliche Optionen eingeben. Hier ist ein Profil aus der unten angegebenen Manual.

# Roots of the synchronization
root = /home/bcpierce
root = ssh://saul//home/bcpierce

# Paths to synchronize 
path = current
path = common
path = .netscape/bookmarks.html

# Some regexps specifying names and paths to ignore
ignore = Name temp.*
ignore = Name *~
ignore = Name .*~
ignore = Path */pilot/backup/Archive_*
ignore = Name *.o
ignore = Name *.tmp

# Window height
height = 37

# Keep a backup copy of every file in a central location
backuplocation = central
backupdir = /home/bcpierce/backups
backup = Name *
backupprefix = $VERSION.
backupsuffix = 

# Use this command for displaying diffs
diff = diff -y -W 79 --suppress-common-lines

# Log actions to the terminal
log = true

In diesem Profil wird angegeben, dass einige Ordner bzw. Dateinamen ignoriert werden, dass ein BackUp jeder Synchronisation erstellt wird, dass Änderungen ausgegeben werden und dass ein Log erstellt wird. Außerdem gibt es eine Option für die grafischen Oberflächen. Eine vollständige Liste aller Optionen befindet sich im Manual.

Grafische Oberflächen

Die grafischen Oberflächen lassen wie folgt starten.

unison-gtk

bzw.

unison-gtk2

Die Bedienung ist, wenn man obige verstanden hat, selbsterklärend.

Links