PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : drsync - abgleich funktioniert nur in eine richtung



linuxazubi
22.02.05, 19:58
hallo!

ich möchte zwei verzeichnisse miteinander synchronisieren (später mal via ftp auf zwei rechnern) und habe mich jetzt mit drsync beschäftigt.

leider synchronisiert das programm nur von "quelle" in richtung "ziel", obwohl ich eine datei in "ziel" erneuert habe.

was mach' ich nur falsch?


$ drsync.pl --verbose=2 --recursive --state-file=statefile.gz quelle/ ziel/
Getting file list: rsync -n --stats --recursive --rsh=rsh quelle/ /dev
Executing: rsync --update --existing --recursive --rsh=rsh -v quelle/ ziel/
building file list ... done

sent 200 bytes received 20 bytes 440.00 bytes/sec
total size is 5547 speedup is 25.21

tictactux
22.02.05, 20:28
Hi,

mich stört das "--existing" in der generierten Befehlszeile für rsync.
Leider ist das in drsync (bzw. seinem Perl-Modul DRSync.pm) hard-codiert.

Wenn Du testen willst ob das die Ursache ist, könntest Du das mal
rausnehmen:

vi +/--existing/ $(locate DRSync.pm)

HTH
Wolfgang

linuxazubi
22.02.05, 20:34
Hi,

mich stört das "--existing" in der generierten Befehlszeile für rsync.
Leider ist das in drsync (bzw. seinem Perl-Modul DRSync.pm) hard-codiert.

Wenn Du testen willst ob das die Ursache ist, könntest Du das mal
rausnehmen:

vi +/--existing/ $(locate DRSync.pm)

HTH
Wolfgang

danke wolfgang,
werde ich gleich mal probieren, nur versteh' ich das nicht :mad: , sollte drsync das können?
sonst kann ich ja auch ganz einfach rsync nehmen.

tictactux
22.02.05, 20:43
danke wolfgang,
werde ich gleich mal probieren, nur versteh' ich das nicht :mad: , sollte drsync das können?
sonst kann ich ja auch ganz einfach rsync nehmen.
Ich habe keine Erfahrung mit drsync (hab's zwar installiert um es bei Gelegenheit
mal zu prüfen - ist beim Vorsatz geblieben :D )
Ich sehe aber --existing und aus meiner Kenntnis von rsync könnte ich mir vorstellen
daß diese Option zu dem beschrieben Problem führt (ohne das jetzt getestet
zu haben...)

Ansonsten: das Script ist ja nur ein Wrapper um rsync (mit ein bißchen
Verwaltung von log-Dateien)

Gruß,
Wolfgang

linuxazubi
22.02.05, 20:50
Ich habe keine Erfahrung mit drsync (hab's zwar installiert um es bei Gelegenheit
mal zu prüfen - ist beim Vorsatz geblieben :D )
Ich sehe aber --existing und aus meiner Kenntnis von rsync könnte ich mir vorstellen
daß diese Option zu dem beschrieben Problem führt (ohne das jetzt getestet
zu haben...)

Ansonsten: das Script ist ja nur ein Wrapper um rsync (mit ein bißchen
Verwaltung von log-Dateien)

Gruß,
Wolfgang


ehrlich gesagt: versteh' ich einfach nicht genug von der materie.
dachte einfach nur das drsync im gegensatz zu rsync in beide richtungen synchronisieren kann.

-existing zu löschen hat leider auch keine besserung gebracht:


drsync.pl --verbose=2 --recursive --state-file=statefile.gz quelle/ ziel/
Getting file list: rsync -n --stats --recursive --rsh=rsh quelle/ /dev
Executing: rsync --update --recursive --rsh=rsh -v quelle/ ziel/
building file list ... done

dank' dir aber !

tictactux
22.02.05, 21:33
hab mir drsync nun etwas näher angesehen. Aus meinem Verständnis mußt Du
das Tool für jede sync-Richtung je einmal aufrufen. M.a.W.: es findet kein
2-Way sync in einem Aufruf statt, wie vielleicht angenommen (?).
Dann funktioniert es (fast) wie erwartet, wobei wegen --update und --existing
z.B. leere Verzeichnisse nicht erstellt werden (ohne die beiden Schalter: ja).

Allerdings bin ich von der Handhabung nicht begeistert, speziell von der Tatsache,
daß bei zusätzlicher Angabe von rsync-Optionen (-a anstatt --recursive) eine
nicht-enden-wollende Festplattenaktivität mit 100% CPU-last erzeugt wird
(obwohl der zu synchronisierebde Verzeichnisbaum <15 MB war)...

Also doch lieber manuelles rsync :)

Gruß,
Wolfgang

linuxazubi
23.02.05, 17:32
Allerdings bin ich von der Handhabung nicht begeistert, speziell von der Tatsache,
daß bei zusätzlicher Angabe von rsync-Optionen (-a anstatt --recursive) eine
nicht-enden-wollende Festplattenaktivität mit 100% CPU-last erzeugt wird
(obwohl der zu synchronisierebde Verzeichnisbaum <15 MB war)...



erst mal: danke wolfgang!

das mit der 100 % cpu-last ist mir auch aufgefallen!

jetzt frag' ich mich nur, wofür den drsync gut - oder besser als rsync - sein soll?

lkwg82
08.10.05, 16:44
unison wäre noch eine Lösung für dich

http://freshmeat.net/projects/unison/

zitat:

Unison is a file-synchronization tool for Unix and Windows. It allows two copies of a collection of files and directories to be stored on different hosts (or different disks on the same host), modified separately, and then brought up to date by propagating the changes in each replica to the other. Unison can deal with updates to both replicas of a distributed directory structure. Updates that do not conflict are propagated automatically. Conflicting updates are detected and displayed. Unison can communicate through a direct socket link or through an rsh/ssh tunnel. It uses network bandwidth efficiently.