Ich möchte meine lokalen Dateien mit einem Backup synchronisieren, das ich auf einem Server habe, der den Zugriff von meinem derzeitigen Standort aus nur über ein Gateway ermöglicht. Also habe ich mir folgendes ausgedacht
rsync -avz -r --stats --progress -e "ssh gateway.dot.com ssh server.dot.com:/home/myname/documents/" /home/myname/documents
und es findet eine gewisse Kommunikation statt, da alle Dateien aufgelistet werden, aber die Zusammenfassung am Ende zeigt, dass es überhaupt keinen Dateitransfer gab.
Number of files: 270889
Number of files transferred: 0
Total file size: 70343212868 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 7596005
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 7613770
Total bytes received: 17764
sent 7613770 bytes received 17764 bytes 50707.87 bytes/sec
total size is 70343212868 speedup is 9217.44
Ideen?
Antworten:
rsync
Befehl seinrsync ... -e "ssh the.gateway ssh" /local/dir/ the.remote.server:/remote/dir/
?Die Nachrichtspeedup is 9217.44
zeigt, dass die Übertragung ist9217
mal optimiert, das heißt die dateien zwischen den beiden hosts werden fast (wenn nicht schon) synchronisiert.AKTUALISIEREN:
# 2 ist nicht korrekt. Sehen Crayzeewulfs Antwort für mehr erklärung. Der Beschleunigungswert hat mich irregeführt, um zu verstehen, dass es funktioniert hat.
quelle
Ich denke Punkt 1 in Clarkws Antwort ist richtig. Wenn du benutzt
...-e "ssh gateway.dot.com ssh server.dot.com:/home/myname/documents/"
hat der entsprechende Befehl rsync ein Quellverzeichnis, aber kein Zielverzeichnis. In diesem Fall laut rsync-Handbuch:Genau das ist los. Sie können dies überprüfen, indem Sie Müll als das bereitstellen
-e
Streit. Zum Beispiel:Dieser Befehl funktioniert einwandfrei. Es wird alles unter aufgelistet
/tmp
und zeige nette Statistiken am Ende:Beachten Sie, dass hier keine Dateien wie in Ihrem Beispiel übertragen werden. Sie müssen Ihren ursprünglichen Befehl ändern:
zu:
Natürlich ersetzen
gateway.dot.com
undserver.dot.com
mit den entsprechenden Hostnamen.quelle