Bezogen auf diese Frage
Kurze Beschreibung des Problems:
Wenn der Quellbaum einen eingebundenen Punkt enthält, werden Zeitstempel für Dateien innerhalb dieses eingebundenen Punkts beim Kopieren in den Zielbaum nicht beibehalten, auch wenn die -a
Option verwendet wird
Detaillierte Beschreibung:
Angenommen, dies ist der Quellenbaum:
/home/ /home/
| |
me/ BACKUP/
| |
+----+----------+ +----+-------+
| | | | | |
data/ foo.txt boo.txt data/ foo.txt boo.txt
| |
a.txt a.txt
Wo data/
oben ist externe USB-Festplatte gemountet. Alles ist ext4
Dateisystem. Alles in der Quelle gehört mir me
.
BACKUP
Zufällig war auch ein Einhängepunkt das Backup-USB-Laufwerk.
Nachdem rsync -av --delete /home/me/ /home/BACKUP/
ich diesen Befehl ausgegeben habe , habe ich festgestellt, dass /home/BACKUP/data/
und alles darunter den aktuellen Zeitstempel hat, als ob diese Dateien jetzt erstellt worden wären, und nicht den Zeitstempel für die Dateien in /home/me/data/
. Bei anderen externen Dateien und Ordnern data
blieb der Zeitstempel in Ordnung.
Die Frage ist: Wie wird rsync
in der obigen Einstellung festgelegt, dass Zeitstempel für alle Dateien und Ordner beibehalten werden sollen, auch für Dateien und Ordner auf einem bereitgestellten Punkt?
Ich benutze:
>uname -a
Linux 3.5.0-17-generic #28-Ubuntu SMP x86_64 x86_64 x86_64 GNU/Linux
>rsync -v
rsync version 3.0.9 protocol version 30
-a
die sagt:archive mode; equals -rlptgoD
dafür-t
bereits enthalten ist.ls -l
der Datei sehen. Dies funktioniert für Dateien, die sich nicht innerhalb des Einhängepunkts befinden. Alle Dateien im Mount-Punkt haben jedoch einen Zeitstempel, der darauf hinweist, dass sie gerade erstellt wurden. Wie auch immer du diesmal nennst. Ich wollte nur, dass es den gleichen Zeitstempel für die Dateien in der Quelle verwendet. Jetzt geht es nicht. Ich möchte, dass alle Zeitaspekte kopiert werden. dh es muss ein Klon der Datei erstellt werden. Erstellungszeit, Änderungszeit, etc ...ls -l
zeigt mtime (ändern) nicht ctimeWie hr3miller bereits sagte, ist -a (oder --archive) gleich -rlptgoD und enthält bereits die Synchronisationszeit.
Wenn jedoch rsync Daten kopiert, z. Bei einem NFS / FAT32 / NTFS-Mount, bei dem die Beibehaltung von Benutzer und Besitzer fehlschlägt, versucht rsync nicht, die Uhrzeit festzulegen. Rsync warnt mit so etwas wie
Lassen Sie daher die Beibehaltung von Benutzer und Gruppe durch Verwendung von weg
anstatt
Verwenden Sie diese Option nur, wenn der Eigentümer und die Gruppe nicht erhalten bleiben. Beachten Sie, dass das Beibehalten von Symlinks und anderen Funktionen auch dieses Verhalten auslösen kann. Sie müssen die Manpage für jede rsync-Funktion (-r -l -p -t -g -o -D) durchgehen, die Sie sichern möchten.
quelle
Ich benutze
rsync -az
und sicher, dass es mir die Änderungszeit erspart. Ich habe es jetzt noch einmal überprüft.quelle
-a
(--archive
) enthält-t
.