Hallo Leute,
ich habe mich jetzt lange mit dem Thema synchronisieren auseinander gesetzt.
Unison ermöglicht bi-direktionales synchronisieren von verzeichnisbäumen. rsync beherrscht im Gegensatz dazu nur uni-direktionales syncen. d.h. es ist nicht möglich in beiden Verzeichnisbäumen Dateien hinzuzufügen und zu löschen.
Sobald man Daten löscht (also --delete anhängt) muss man bei rsync einen master festlegen (tut man meistens unbewusst) es wird also nicht mehr wirklich gesynct. Sobald man jetzt aber einen File am slave hinzufügt wird diese beim nächsten sync gelöscht. Ihr könnt es euch durchüberlegen, es geht nicht man legt immer implizit einen master fest.
Jetzt aber unison.
Ich habe mir für meine beiden Station (DS209+II und RS409+) die Unison version folgendermaßen installiert
ipkg install http://www.tupperclub.de/blog/wp-content/uploads/2009/02/unison_2.27.57_powerpc.ipk
Es wird unison und anschließend ocaml installiert. Geht vollautomatisch.
Danach ist unison bereits einsatzbereit
Es muss natürlich bei einem Remotesystem auf beiden Seiten installiert werden.
Um es remote nutzen zu können, geht ssh oder per socket Verbindung. Alles sehr gut beschrieben (englisch) unter:
http://urd.kph.de/wiki/index.php/Unison
Da bei mir es über ssh nicht ging, habe ich die socket Version genommen.
Dabei führt man auf dem server unison als daemon aus
unison -socket XXX
XXX steht hier für eine freie Portnummer. Kann jeder selbst wählen, solange sie frei ist. (An mögliche Routerfreigaben denken, wenn via Internet)
Auf der client Seite ruft man unison wie folgt auf
unison /quelle socket://remotehostname:XXX//ziel
mit der option -batch geht alles ohne Nachfragen.
unison /quelle socket://remotehostname:XXX//ziel -batch
Jetzt kann man auf beiden Seiten Daten anlegen, löschen, ändern etc. Nach dem Sync sind auf beiden Seiten alle Daten gleich.
Jetzt bin ich noch dabei auf der Server Seite ein Script zum Starten des daemon zu schreiben...
ich habe mich jetzt lange mit dem Thema synchronisieren auseinander gesetzt.
Unison ermöglicht bi-direktionales synchronisieren von verzeichnisbäumen. rsync beherrscht im Gegensatz dazu nur uni-direktionales syncen. d.h. es ist nicht möglich in beiden Verzeichnisbäumen Dateien hinzuzufügen und zu löschen.
Sobald man Daten löscht (also --delete anhängt) muss man bei rsync einen master festlegen (tut man meistens unbewusst) es wird also nicht mehr wirklich gesynct. Sobald man jetzt aber einen File am slave hinzufügt wird diese beim nächsten sync gelöscht. Ihr könnt es euch durchüberlegen, es geht nicht man legt immer implizit einen master fest.
Jetzt aber unison.
Ich habe mir für meine beiden Station (DS209+II und RS409+) die Unison version folgendermaßen installiert
ipkg install http://www.tupperclub.de/blog/wp-content/uploads/2009/02/unison_2.27.57_powerpc.ipk
Es wird unison und anschließend ocaml installiert. Geht vollautomatisch.
Danach ist unison bereits einsatzbereit
Es muss natürlich bei einem Remotesystem auf beiden Seiten installiert werden.
Um es remote nutzen zu können, geht ssh oder per socket Verbindung. Alles sehr gut beschrieben (englisch) unter:
http://urd.kph.de/wiki/index.php/Unison
Da bei mir es über ssh nicht ging, habe ich die socket Version genommen.
Dabei führt man auf dem server unison als daemon aus
unison -socket XXX
XXX steht hier für eine freie Portnummer. Kann jeder selbst wählen, solange sie frei ist. (An mögliche Routerfreigaben denken, wenn via Internet)
Auf der client Seite ruft man unison wie folgt auf
unison /quelle socket://remotehostname:XXX//ziel
mit der option -batch geht alles ohne Nachfragen.
unison /quelle socket://remotehostname:XXX//ziel -batch
Jetzt kann man auf beiden Seiten Daten anlegen, löschen, ändern etc. Nach dem Sync sind auf beiden Seiten alle Daten gleich.
Jetzt bin ich noch dabei auf der Server Seite ein Script zum Starten des daemon zu schreiben...