rsync no crea una copia de seguridad del directorio

rsync no crea una copia de seguridad del directorio

Digamos que tengo un directorio con archivos:

a b c d

Entonces copio con rsync:

rsync -av --delete -P --backup --backup-dir=sample-$(date +%a-%H%M) ../sample /backups

Entro en /backup/sample:

-rw-r--r-- 1 sergio sergio 0 feb 17 18:31 d
-rw-r--r-- 1 sergio sergio 0 feb 17 18:31 c
-rw-r--r-- 1 sergio sergio 0 feb 17 18:31 b
-rw-r--r-- 1 sergio sergio 0 feb 17 18:31 a

Pero si creo un directorio:

a b c d newdir

Solo entro en /backup/sample:

-rw-r--r-- 1 sergio sergio    0 feb 17 18:31 d
-rw-r--r-- 1 sergio sergio    0 feb 17 18:31 c
-rw-r--r-- 1 sergio sergio    0 feb 17 18:31 b
-rw-r--r-- 1 sergio sergio    0 feb 17 18:31 a
drwxr-xr-x 2 sergio sergio 8192 feb 17 18:52 newdir

Sin embargo, si elimino un archivo:

/backups
├── sample
│   ├── a
│   ├── b
│   ├── c
│   └── newdir
└── sample-sáb-1855
    └── sample
        └── d

Entonces, ¿por qué rsync no crea una 'fecha de muestra...' en la primera modificación (creación de un nuevo directorio)? ¿Es ese el comportamiento esperado?

Respuesta1

Dersync(1)

-b, --copia de seguridad
Con esta opción,archivos de destino preexistentescambian de nombre a medida que se transfiere o elimina cada archivo. Puede controlar dónde va el archivo de copia de seguridad y qué sufijo (si corresponde) se agrega usando el--directorio-copia de seguridady--sufijoopciones.

Las dos primeras veces, sólo se transfieren archivos nuevos, por lo que no es necesario crear copias de seguridad.

En la tercera llamada, el archivo sample/dse elimina y ahora la opción --backuple indica a rsync que cree una copia de seguridad de sample/d. Esta copia de seguridad se crea en el directorio de copia de seguridad /backups+ sample-$(date +%a-%H%M).

Lo mismo sucedería si modifica alguno de los archivos existentes. Por ejemplo, cambiar el archivo sample/acrearía una copia de seguridad aen el directorio de copia de seguridad /backups/sample-$(date +%a-%H%M).


Si desea crear una copia de seguridad versionada, preferirá proporcionar un directorio de destino diferente cada vez que se ejecute rsync

rsync -av --delete -P ../sample /backups/sample-$(date +%a-%H%M)

información relacionada