¿Cómo puedo conservar los tiempos de modificación de archivos al copiar en un NAS?

8

Recientemente instalé una Synology DiskStation en mi red. Lo monté desde una computadora Ubuntu 12.04.1 con el botón Examinar red en Nautilus 3.4.2. Aparece como afp: //[email protected]/photo/ en Nautilus.

Hasta aquí todo bien. Luego cargué muchas fotos, todas con tiempos de modificación que abarcan varios meses. Cuando miré el directorio de fotos en DiskStation, todas tenían tiempos de modificación por el momento en que se copiaron, no los tiempos de modificación en la computadora de origen. Esto en cuanto a ordenarlos por fecha en DiskStation.

¿Hay alguna manera de volver a copiar los archivos pero se conserva su fecha de modificación? Quizás monté el DiskStation de la manera incorrecta. Quizás Nautilus fue la herramienta incorrecta para usar. ¿Alguna sugerencia?

Por cierto, he movido gigabytes de fotos a un NAS diferente (Plextor PX-EH) sobre SMB / CIFS de Ubuntu 10.04, 10.10, 11.04 y 11.10 con tiempos de modificación totalmente preservados. El problema debe estar en Synology o en algún software Ubuntu 12.04.

Randall Cook
fuente
¿Es ese NAS compatible con el acceso SSH? En caso afirmativo, puede usar rsynco una de sus interfaces de interfaz gráfica de usuario para sincronizar fotos. Además, también debe ser compatible con SMB / CIFS, que puede montar directamente en Ubuntu y copiar datos con cp, rsynco cualquier otra herramienta.
Sergey
rsync es la mejor herramienta de copia / sincronización para usar. El -a (-rlptgoD) conserva el tiempo de modificación. Ver man rsync para más detalles. Sin embargo, esto requiere SSH + rsync en ambos hosts.
Terry Wang

Respuestas:

3

Creo que he resuelto el problema. En Ubuntu 12.04, en Nautilus hay dos formas de conectarse al NAS DiskStation remoto. Uno conserva los tiempos de modificación, uno no.

En el menú en el lado izquierdo de una ventana de Nautilus, el botón Examinar red ... finalmente conduce a una conexión AFP (Protocolo de archivo de Apple) a DiskStation, a través de la cual ni Nautilus ni las cp -pcopias conservan el tiempo de modificación. Intenté deshabilitar el soporte de Apple en DiskStation, pero en ese modo, DiskStation ni siquiera era visible en Browse Network.

En el menú Archivo de Nautilus hay una opción Conectar al servidor ... que ofrece una gran cantidad de protocolos. Elegí Windows, ingresé mis credenciales y me conecté sin problemas. En este modo, se conservan los tiempos de modificación, por lo que pude volver a copiar mis fotos y preservar sus fechas.

Gracias Sergey y david6 por sus sugerencias. Esperemos que la gente encuentre valiosa esta información.

Randall Cook
fuente
He usado "Conectar al servidor" para conectarme a otra máquina Ubuntu desde Nautilus en Ubuntu 18.04, y al copiar archivos, Nautilus conservó las marcas de tiempo de los directorios, pero no los archivos. Midnight Commander configura todas las marcas de tiempo de modificación de archivos a la hora de la copia. BeyondCompare el archivo preservado, pero no el directorio, las marcas de tiempo.
Dan Dascalescu
2

El cpcomando estándar tiene una --preservemarca que conserva ciertos atributos (por defecto: modo, propiedad, marcas de tiempo) al copiar.

Entonces algo como esto:

cp -rp /source/photos/folder /destination/photos/folder

debería hacer el truco en el caso "normal". Sin embargo, la afp://cosa en la URL me confunde: ¿es el Protocolo de presentación de Apple? Todas las apuestas están apagadas en este caso.

Creo que me gustaría agregar: confiar en las fechas de modificación de archivos para catalogar sus fotos es muy frágil. Para esto sirven los metadatos de imagen (EXIF, etc.). O, al menos, simplemente colóquelos en los directorios según su fecha de disparo: fotos / 2012/12/05, etc.

Sergey
fuente
Gracias por el dato, Sergey. Si tengo que usar la línea de comando, lo haré, pero esperaba que Ubuntu pudiera hacer lo correcto a través de la GUI. Tiene en el pasado (pre-12.04). Y sí, estaba a punto de mover las fotos a carpetas organizadas por mes cuando noté el problema del tiempo de modificación.
Randall Cook
Intenté cp -pdesde un terminal y obtuve este error: "cp: preservar tiempos para '.gvfs / AFP volume photo para randall en DiskStation / target_dir / image.JPG': Operación no admitida". Así que supongo que cp -pno va a funcionar. Probaré la sugerencia de david6.
Randall Cook, el
Cuando se utiliza Mac OS para acceder al Synology NAS a través del terminal, cp -pno conserva las marcas de tiempo. He montado el NAS a través de smb. Le pregunté al soporte de Synology, y aparentemente la falta de preservación es el comportamiento predeterminado. Por otro lado, rsyncconserva marcas de tiempo.
andrewj
Solo con respecto a las imágenes y si la fecha de la imagen EXIF ​​tomada le molesta (y de hecho frágil) Si alguien quiere restaurar las últimas fechas modificadas de Exif Information, mire aquí: → photo.stackexchange.com/a/69193/48640
Frank Nocke
Considere usar en su cp -alugar .
Pablo Bianchi
2

Este es el clásico problema de inserción / extracción , para la copia remota.

El host receptor no está cumpliendo con el sello de fecha de los archivos recibidos . Nautilus tiene esta misma falla, desde 10.04 LTS hasta 12.10 ..

Esto se resuelve (para Nautilus), cuando se copia entre dos hosts Ubuntu, copiando siempre desde el host remoto (fuente) al host local (destinatario). ( 'También conocido como TIRE ')


Su problema es con la caja NAS, y no con Ubuntu.

Lo necesita para honrar el sello de fecha de los archivos recibidos (por defecto).

¿Está utilizando NFS (Linux) o CIFS (Windows) para compartir archivos?

david6
fuente
Gracias, david6. Definitivamente no estoy usando NFS, ya que está deshabilitado en DiskStation, pero el uso compartido de archivos de Windows y Mac está habilitado. Cuando me conecto a DiskStation, Nautilus (supongo) solo me pide un nombre de usuario y contraseña, no un protocolo. El montaje que obtengo tiene "AFP" en su nombre, así que supongo que eligió el protocolo de archivo de Apple. Intentaré forzar un montaje CIFS, veré si eso funciona y luego encontraré una manera de obtenerlo automáticamente.
Randall Cook
0

¡Resulta que conservar marcas de tiempo para archivos y directorios sigue siendo un problema en 2019! Estaba copiando archivos de una máquina Ubuntu 16 a una Ubuntu 18 a través de SFTP, usando Nautilus en Ubuntu 18, y todos los archivos tenían la marca de tiempo actual, pero los directorios tenían las marcas de tiempo originales. Otras herramientas fallaron también:

Lo que sí funcionó fue montar el sistema de archivos remoto usando sshfs :

$ sudo mkdir /mnt/remote-machine
$ sudo sshfs -o allow_other,default_permissions [email protected]:/ /mnt/remote-machine
$ cp -rp /mnt/remote-machine/path/to/files ./
$ # ... or use another file manager

Copiar desde la ruta montada también permitió a Midnight Commander preservar las marcas de tiempo (pero no ayudó a BeyondCompare).

Dan Dascalescu
fuente