Ich verwende die aktuelle Version von rsync 3.2.3 und wenn ich stat
ausführe Befehl zeigt es mir diese Informationen für meine Datei.
stat '/test.txt'
File: /test.txt
Size: 0 Blocks: 0
IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 11949
Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/liveuser) Gid: ( 1000/liveuser)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2021-02-24 03:17:27.142676494 +0100
Modify: 2021-02-24 03:17:27.142676494 +0100
Change: 2021-02-24 03:17:27.142676494 +0100
Birth: 2021-02-24 03:17:27.142676494 +0100
Ich möchte Zugriffs-, Änderungs- und Geburtszeitstempel beibehalten. Verwenden Sie diesen Befehl in rsync
rsync --atimes --times --crtimes
oder
rsync -UtN
Die Problemerstellungszeit (–crtimes) wird unter Linux nicht beibehalten. Es stellt sich automatisch auf die aktuelle Übertragungszeit ein.
Wie kann ich das Verhalten unter Linux ändern? Ich möchte alle 3 Zeitstempel für meine kopierten Dateien und Ordner beibehalten.
Wenn ich dasselbe unter macOS mache, funktioniert es ohne Probleme.
BEARBEITEN
Unter macOS 10.13 und macOS 11 muss ich nur Homebrew installieren und dann kann ich das neueste rsync 3.2.3 bekommen. Standardmäßig hat macOS eine sehr veraltete rsync-Version 2.6.9 integriert.
-
Terminal öffnen
-
Homebrew installieren
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
-
Installieren Sie rsync
brew install rsync
Akzeptierte Antwort:
Die Problemerstellungszeit (–crtimes) wird unter Linux nicht beibehalten. Es stellt sich automatisch auf die aktuelle Übertragungszeit ein.
Während Sie crtime perfekt abfragen können, gibt es unter Linux leider keine API, um es einzustellen:https://linux.die.net/man/2/utimes .
Wie kann ich das Verhalten unter Linux ändern? Ich möchte alle 3 Zeitstempel für meine kopierten Dateien und Ordner beibehalten.
Überprüfen Sie diese Frage:Kopieren oder Wiederherstellen von crtime für Dateien/Verzeichnisse im ext4fs-Dateisystem