
Rsync ist, wie Sie wissen, für seine Fähigkeit bekannt, Dateien inkrementell zu synchronisieren – also nur die Änderungen zu sichern. Dies ist jedoch nicht das Verhalten, das mir beim Testen meines Rsync-Setups aufgefallen ist.
Es scheint, dass Rsync jedes Mal, wenn ich das Dienstprogramm ausführe, weiterhin jede einzelne Datei sichert und ersetzt. Ich weiß das, weil die Dateien in meinem Zielordner bei jedem Ausführen von rsync ihren Änderungszeitstempel kontinuierlich aktualisieren. Ich habe auch die Option --progress verwendet, um Rsync dabei zu erwischen, wie es sich Zeit lässt, dieselben Dateien, die bereits „synchronisiert“ wurden, in den Quellordner zu kopieren.
Gibt es eine spezielle Möglichkeit, Rsync auszuführen, damit es das tut, was es tun soll?
Antwort1
Es ist sehr wahrscheinlich, dass Sie rsync
zwischen zwei Dateibäumen auf demselben Server kopieren möchten. In diesem Fall rsync
deaktiviert es den Delta-Algorithmus und verwendet Dateigröße und Änderungszeit, um zu bestimmen, ob die Datei kopiert werden soll oder nicht. Wenn Sie --times
( -t
) oder --archive
( -a
) nicht angeben, bleiben die Zeitstempel der Quelldateien nicht erhalten und die Datei wird bei jedem Ausführen kopiert rsync
.
Wahrscheinlicher Befehl:
rsync /path/to/source/* /path/to/destination/
Besserer Befehl:
rsync -a /path/to/source/ /path/to/destination/