Ho un NAS Asustor che gira su Linux; Non so quale distribuzione usano.
Sono in grado di accedere utilizzando SSH e utilizzare tutti i comandi Shell. Il volume interno utilizza ext2 e gli HD USB esterni utilizzano NTFS.
Quando provo a usare cp
comando per copiare qualsiasi file in giro, i metadati della data di quel file vengono modificati in datetime corrente.
Ad esempio, se utilizzo Windows per copiare il file da SMB e il file è stato modificato nel 2007, il nuovo file viene contrassegnato come creato ora nel 2017 ma modificato nel 2007. Ma con Linux cp
comando anche la sua data di modifica è cambiata in 2017.
Questa data modificata è molto importante per me perché mi consente di ordinare i file su Esplora risorse di Windows in base alla data di modifica. Se viene sovrascritto, non riesco a ordinare e sembra che siano stati tutti creati ora. Uso anche la data modificata per sapere quando ho acquisito alcuni vecchi file rari.
C'è qualche parametro che posso usare in cp
comando per preservare i metadati del file originale?
Aggiornamento:ho provato cp --preserve=timestamps
ma non ha funzionato, ha stampato:
cp: unrecognized option '--preserve=timestamps'
BusyBox v1.19.3 (2017-03-22 17:23:49 CST) multi-call binary.
Usage: cp [OPTIONS] SOURCE DEST
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY
-a Same as -dpR
-R,-r Recurse
-d,-P Preserve symlinks (default if -R)
-L Follow all symlinks
-H Follow symlinks on command line
-p Preserve file attributes if possible
-f Overwrite
-i Prompt before overwrite
-l,-s Create (sym)links
Se provo solo -p
dice cp: can't preserve permissions of '...': Operation not permitted
, ma per quanto ho testato, i timestamp vengono conservati.
Risposta accettata:
Se usi man cp
per leggere la pagina di manuale del comando di copia troverai -p and --preserve
bandiere.
-p
come --preserve=mode,ownership,timestamps
e
--preserve[=ATTR_LIST]
conserva gli attributi specificati (predefinito:mode,ownership,timestamps
), se possibile attributi aggiuntivi:context
, links
, xattr
, all
Ciò a cui questo si riduce è che dovresti usare cp -p
invece di solo cp
.