Mueva los directorios de respaldo diarios (realizados por rsync) a otro directorio en la misma partición

Mueva los directorios de respaldo diarios (realizados por rsync) a otro directorio en la misma partición

Tengo un script rsync diario que hace una copia de seguridad de mis datos en un disco duro externo en /mnt/X(raíz del disco duro). Estoy acostumbrado --link-desta utilizar enlaces físicos y evitar la duplicación de datos. Necesito mover todas mis copias de seguridad diarias de /mnt/Xa /mnt/X/backupssin perder los enlaces físicos. Más adelante tendré que cambiar el script para hacer una copia de seguridad en el nuevo directorio de destino /mnt/X/backupsy buscar la copia de seguridad del día anterior en el mismo directorio.

¿Cómo me recomendarías hacer la mudanza?

Respuesta1

No tienes que hacer nada especial. Simplemente,

mv /mnt/X/* to /mnt/X/backups/

(Recibirá un error indicando que no puede moverse backupshacia sí mismo).

Un enlace físico es básicamente un número de inodo. Los archivos que están vinculados tienen el mismo número de inodo. Independientemente de cómo los mueva dentro del mismo sistema de archivos, el número de inodo no cambia. Por lo tanto, no es necesaria ninguna acción especial.

Pruébelo usted mismo con algunos archivos simples /tmpprimero:

/tmp $ mkdir aa
/tmp $ touch aa/f
/tmp $ ln aa/f aa/g
/tmp $ mkdir aa/new
/tmp $ mv aa/* aa/new
mv: cannot move 'aa/new' to a subdirectory of itself, 'aa/new/new'
/tmp $ ls -il aa/new/
13185910 -rw-r--r-- 2  0 Apr 11 13:32 f
13185910 -rw-r--r-- 2  0 Apr 11 13:32 g

información relacionada