Laut Manpage hat psusi Recht:
-W, --ganze-Datei :Die Übertragung kann schneller sein, wenn diese Option verwendet wird, wenn die Bandbreite zwischen Quell- und Zielcomputer höher ist als die Bandbreite zur Festplatte (insbesondere wenn die "Festplatte" tatsächlich ein vernetztes Dateisystem ist). Dies ist die Standardeinstellung, wenn sowohl die Quelle als auch das Ziel als lokale Pfade angegeben sind, aber nur, wenn keine Stapelschreiboption aktiviert ist.
Die einfache Antwort auf diese Frage lautet:
Verwenden Sie den --no-W
Flag, um eine Delta-Komprimierung zu erzwingen, egal ob lokal oder remote.
Aktualisierung: Anscheinend steckt mehr hinter der Geschichte. Die delta compression
scheint nur zwischen dem Empfangs- und Sendeprozess von rsync aktiviert zu sein. Beim Ausgeben der Datei an das Dateisystem rsync
kann immer noch die ganze(n) Datei(en) schreiben, sogar mit eingeschalteter Delta-Komprimierung.
Siehe "Wakan Tankas" Untersuchung hier.
Aktualisierung 2: Die --inplace
schreibt nur die geänderten Teile der Datei. Beachten Sie jedoch, dass dies mit --sparse
in Konflikt steht und wird laut Handbuch nicht empfohlen, wenn die Zieldatei verwendet wird.
Standardmäßig erstellt rsync aus verschiedenen Sicherheitsgründen zuerst eine neue Kopie der Zieldatei und ersetzt sie dann. Sie können dies überschreiben, indem Sie --inplace
angeben zusammen mit --no-whole-file
. Dies weist rsync an, eine In-Place-Bearbeitung der Zieldatei durchzuführen, wobei die verschiedenen Risiken (typischerweise geringfügig für diese Situation) akzeptiert werden, wie in der Manpage dokumentiert.