Sto usando l'attuale versione rsync 3.2.3 e quando eseguo stat
comando mi mostra queste informazioni per il mio file.
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
Voglio preservare i timestamp di accesso, modifica e nascita. Usa questo comando in rsync
rsync --atimes --times --crtimes
o
rsync -UtN
Il tempo di creazione del problema (–crtimes) non viene preservato su Linux. Si imposta automaticamente sull'ora di trasferimento corrente.
Come posso modificare il comportamento su Linux? Voglio conservare tutti e 3 i timestamp per i miei file e cartelle copiati.
Se faccio lo stesso su macOS funziona senza problemi.
MODIFICA
Su macOS 10.13 e macOS 11 devo solo installare homebrew e quindi posso ottenere l'ultimo rsync 3.2.3. Per impostazione predefinita, macOS ha una versione rsync 2.6.9 molto obsoleta integrata.
-
Apri Terminale
-
Installa Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
-
Installa rsync
brew install rsync
Risposta accettata:
Il tempo di creazione del problema (–crtimes) non viene preservato su Linux. Si imposta automaticamente sull'ora di trasferimento corrente.
Sebbene tu possa interrogare perfettamente crtime, sfortunatamente non esiste un'API per impostarlo in Linux:https://linux.die.net/man/2/utimes .
Come posso modificare il comportamento su Linux? Voglio conservare tutti e 3 i timestamp per i miei file e cartelle copiati.
Verifica questa domanda:copiare o ripristinare crtime per file/directory sul filesystem ext4fs