Conserva ctime con SCP


14

Come posso copiare un file usando SCP preservando ctime (tempo di modifica)?

Ho una cartella sul mio Mac (OS 10.8) e i risultati di ls -le ls -lcsono gli stessi.

$ ls -l
total 0
drwxr-xr-x  9 elliott  staff  306 Mar 24 21:24 Day1b
$ ls -lc
total 0
drwxr-xr-x  9 elliott  staff  306 Mar 24 21:24 Day1b

Quindi lo copio su un server remoto (Linux), -pper preservare i timestamp.

$ scp -pr Day1b/ elliott@server.com:/

Ora sul server remoto, il tempo è cambiato alla data corrente.

# ls -l
total 00
drwxr-xr-x  3 elliott elliott 4096 Mar 24 23:24 Day1b/
# ls -lc
total 0
drwxr-xr-x  3 elliott elliott 4096 Mar 28 14:08 Day1b/

Risposte:


20

Il tempo di modifica è mtime, non ctime. scp -pconserva già mtime.

ctime è il tempo di cambio dell'inode , aggiornato ogni volta che il file stesso viene toccato in alcun modo: rinominato, spostato, modificato, ecc.

Generalmente non c'è modo di preservarlo, poiché il sistema operativo non fornisce alcuna funzione per questo, e anche se lo facesse, l'atto stesso di impostare il ctime sarebbe una modifica che causerebbe il nuovo aggiornamento del ctime.

In altre parole, ls -lcè inutile per la maggior parte degli scopi e non bisogna preoccuparsene.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.