rsync não cria um backup de diretório

rsync não cria um backup de diretório

Digamos que eu tenha um diretório com arquivos:

a b c d

Então copio com rsync:

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

Eu entro em /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

Mas se eu criar um diretório:

a b c d newdir

Eu só entro em /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

No entanto, se eu excluir um arquivo:

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

Então, por que o rsync não cria uma 'data de amostra...' na primeira modificação (criação de newdir). Esse é o comportamento esperado?

Responder1

Dersync(1)

-b, --backup
Com esta opção,arquivos de destino preexistentessão renomeados à medida que cada arquivo é transferido ou excluído. Você pode controlar para onde vai o arquivo de backup e qual sufixo (se houver) será anexado usando o--backup-dire--sufixoopções.

Nas duas primeiras vezes, apenas novos arquivos são transferidos, não havendo necessidade de criação de backups.

Na terceira chamada, o arquivo sample/dé removido e agora a opção --backupdiz ao rsync para criar um backup do arquivo sample/d. Este backup é criado no diretório de backup /backups+ sample-$(date +%a-%H%M).

O mesmo aconteceria se você modificasse algum dos arquivos existentes. Por exemplo, alterar o arquivo sample/acriaria uma cópia de backup ano diretório de backup /backups/sample-$(date +%a-%H%M).


Se você deseja criar um backup com versão, você prefere fornecer um diretório de destino diferente cada vez que o rsync for executado

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

informação relacionada