Назад | Перейти на главную страницу

Borg Backup работает не так, как ожидалось - новые файлы резервных копий каждый день

Что я делаю

Я использую резервную копию Borg v1.1.0b6 на своем производственном сервере AWS Linux. Borg должен быть блочным, дедуплицированным и инкрементным. Я также пробовал borg-linux64 v1.1.6 с теми же результатами.

Мое наблюдение

Я обнаружил, что вместо получения инкрементных дедуплицированных резервных копий он, кажется, делает полную резервную копию каждый раз, когда я ее запускаю. Он создает новый файл со всеми данными из моих исходных папок и обрезает все старые файлы резервных копий, а не создает новые файлы для новых данных и сохраняет существующие файлы с данными резервных копий.

Я ожидал, что когда я запущу операцию «обрезки», удаляя файлы вне моего графика хранения, я ожидаю значительных изменений в файловой системе.

Ключевая проблема

Ключевая проблема заключается в том, что мне каждую ночь приходится выгружать весь свой набор данных во внешнее хранилище.

Вопрос

Я неправильно его использую? Мои предположения неверны? Как мне заставить borg создавать новый файл для новых данных каждый день, не копируя в него все старые данные?

пример

Например, здесь я создал новый репозиторий резервных копий

/usr/local/bin/borg init /tmp/test -e none

Я делаю первый пробег

/usr/local/bin/borg create --stats /tmp/test::1 /var/testfiles

Что создает эти файлы

-rw------- 1 root root       17 Jun 27 20:09 1
-rw------- 1 root root       17 Jun 27 20:10 3
-rw------- 1 root root 23842026 Jun 27 20:10 4
-rw------- 1 root root       17 Jun 27 20:10 5

С этим выходом


Archive name: 1
Time (start): Wed, 2018-06-27 20:10:45
Time (end):   Wed, 2018-06-27 20:10:46
Duration: 0.57 seconds
Number of files: 150
Utilization of max. archive size: 0%
------------------------------------------------------------------------------
                       Original size      Compressed size    Deduplicated size
This archive:               25.43 MB             24.10 MB             23.84 MB
All archives:               25.43 MB             24.10 MB             23.84 MB

                       Unique chunks         Total chunks
Chunk index:                     155                  160

Я снова запускаю команду create без изменений в каталоге данных. Обратите внимание, что вместо того, чтобы помещать только новые блоки в новый файл, он удаляет файл «4» и создает новый файл.

/usr/local/bin/borg create --stats /tmp/test::2 /var/testfiles

Папка резервного копирования

-rw------- 1 root root       17 Jun 27 20:09 1
-rw------- 1 root root       17 Jun 27 20:10 3
-rw------- 1 root root       17 Jun 27 20:10 5
-rw------- 1 root root       17 Jun 27 20:11 7
-rw------- 1 root root 23842579 Jun 27 20:11 8
-rw------- 1 root root       17 Jun 27 20:11 9

Выходной прогон # 2

------------------------------------------------------------------------------
Archive name: 2
Time (start): Wed, 2018-06-27 20:11:14
Time (end):   Wed, 2018-06-27 20:11:14
Duration: 0.04 seconds
Number of files: 150
Utilization of max. archive size: 0%
------------------------------------------------------------------------------
                       Original size      Compressed size    Deduplicated size
This archive:               25.43 MB             24.10 MB                460 B
All archives:               50.86 MB             48.19 MB             23.84 MB

                       Unique chunks         Total chunks
Chunk index:                     156                  320
------------------------------------------------------------------------------

Затем я добавил файл размером 1 МБ в папку резервного копирования и снова запустил резервное копирование. Опять же, файл с данными «8» был удален и создан новый файл «12».

/usr/local/bin/borg create --stats /tmp/test::3 /var/testfiles

Папка резервного копирования

-rw------- 1 root root       17 Jun 27 20:09 1
-rw------- 1 root root       17 Jun 27 20:10 3
-rw------- 1 root root       17 Jun 27 20:10 5
-rw------- 1 root root       17 Jun 27 20:11 7
-rw------- 1 root root       17 Jun 27 20:11 9
-rw------- 1 root root       17 Jun 27 20:15 11
-rw------- 1 root root 24916076 Jun 27 20:15 12
-rw------- 1 root root       17 Jun 27 20:15 13

Выходной прогон # 3

------------------------------------------------------------------------------
Archive name: 3
Time (start): Wed, 2018-06-27 20:15:34
Time (end):   Wed, 2018-06-27 20:15:34
Duration: 0.06 seconds
Number of files: 151
Utilization of max. archive size: 0%
------------------------------------------------------------------------------
                       Original size      Compressed size    Deduplicated size
This archive:               26.61 MB             25.16 MB              1.07 MB
All archives:               77.47 MB             73.35 MB             24.91 MB

                       Unique chunks         Total chunks
Chunk index:                     159                  481
------------------------------------------------------------------------------

Я ожидаю, что это файлы, которые больше похожи на это: одна резервная копия создает файл «4» с 23 МБ данных, вторая резервная копия ничего не делает, третья резервная копия добавляет около 1 МБ дополнительных данных, которые переходят в новый файл.

-rw------- 1 root root       17 Jun 27 20:09 1
-rw------- 1 root root       17 Jun 27 20:10 3
-rw------- 1 root root 23842026 Jun 27 20:10 4
-rw------- 1 root root       17 Jun 27 20:10 5
-rw------- 1 root root       17 Jun 27 20:11 7
-rw------- 1 root root       17 Jun 27 20:11 9
-rw------- 1 root root       17 Jun 27 20:15 11
-rw------- 1 root root 1000000 Jun 27 20:15 12
-rw------- 1 root root       17 Jun 27 20:15 13

Вы видите эффект уплотняющих сегментов борга.

Небольшой размер вашей тестовой резервной копии вызывает относительно большой эффект - он не будет (относительно) таким большим, если вы используете больше данных (попробуйте, например, 10 ГБ).

Я работаю над улучшением уплотнения, вы можете увидеть это здесь:

https://github.com/borgbackup/borg/pull/3925