rsync не создает резервную копию каталога

rsync не создает резервную копию каталога

Допустим, у меня есть каталог с файлами:

a b c d

Итак, я копирую с помощью rsync:

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

Я получаю в /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

Но если я создам каталог:

a b c d newdir

Я получаю только в /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

Однако если я удалю файл:

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

Итак, почему rsync не создает 'sample-date...' в первой модификации (создание newdir). Это ожидаемое поведение?

решение1

Отrsync(1)

-b, --резервное копирование
С этой опцией,существующие файлы назначенияпереименовываются по мере передачи или удаления каждого файла. Вы можете контролировать, куда отправляется файл резервной копии и какой (если есть) суффикс добавляется, используя--backup-dirи--суффикспараметры.

В первые два раза переносятся только новые файлы, поэтому нет необходимости создавать резервные копии.

При третьем вызове файл sample/dудаляется, и теперь опция --backupсообщает rsync создать резервную копию sample/d. Эта резервная копия создается в каталоге резервных копий /backups+ sample-$(date +%a-%H%M).

То же самое произойдет, если вы измените любой из существующих файлов. Например, изменение файла sample/aприведет к созданию резервной копии aв резервной директории /backups/sample-$(date +%a-%H%M).


Если вы хотите создать версионную резервную копию, вам лучше указать другой целевой каталог при каждом запуске rsync.

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

Связанный контент