LINUX.ORG.RU

Duplicity удаление старых бекапов. Прошу разъяснить.

 ,


0

1

Разбираюсь с системой создания резервных копий (duplicity), не понятна логика удаления старых архивов.

Есть параметр remove-older-than, который удаляет все архивы, старше X D (дней).

Пусть у нас есть две полных копии Full.00 (самая старая копия) и Full.01 и у каждой копии есть инкрементальные архивы inc.{0,1}.{a,b,..}. В текущий момент мы находимся в самом низу приведённой схемы.

Далее, системе необходимо удалить архивы старше X дней, данный момент попадает в интервал между inc.a и inc.b (обозначено на схеме).

Full.0
  |-inc.0.a
  |-<<<< срок remove-older-than X D >>>>
  |-inc.0.b
  |-inc.0.c
  |-inc.0.d
  |-inc.0.e
  |-inc.0.f
  |-inc.0.g
Full.01
  |-inc.1.a
  |-inc.1.b
  |-inc.1.c

Вопрос. Что произойдёт после удаления архивов?

Версия первая. Удалится inc.0.a и удалиться Full.0, оставшиеся inc.0{b..g} превратятся в «тыкву» и будут мертвым грузом занимать место, пока не наступит их час на удаление.

Версия вторая. Удалится Full.0, inc.0.a, а также все оставшиеся инкрементальные архивы inc.0.{b..g} до Full.01.

Версия третья. inc.0.b превратится в Full.0'т.е., станет новым полным архивом с датой inc.0.b, а оставшиеся inc.0.{c..g} будут его инкрементальными архивами.

Как на самом деле? Справка молчит, гугл тоже. Проверять опытным путём долго.

★★★★★

Оказалось, что просто не разрешается удалять бекап, если есть зависимые инкрементальные архивы.

user@net-storage:~/duplicity.sh$ duplicity collection-status file:///mnt/backup/srv.misc/duplicity-test

Local and Remote metadata are synchronized, no sync needed.
Last full backup date: Wed Nov 18 21:16:30 2015
Collection Status
-----------------
Connecting with backend: LocalBackend
Archive dir: /home/user/.cache/duplicity/42f45b4c5ebf5397accd4c97d138d007

Found 1 secondary backup chain.
Secondary chain 1 of 1:
-------------------------
Chain start time: Tue Nov 17 21:43:28 2015
Chain end time: Wed Nov 18 21:09:24 2015
Number of contained backup sets: 3
Total number of contained volumes: 6
 Type of backup set:                            Time:      Num volumes:
                Full         Tue Nov 17 21:43:28 2015                 4
         Incremental         Tue Nov 17 22:57:40 2015                 1
         Incremental         Wed Nov 18 21:09:24 2015                 1
-------------------------


Found primary backup chain with matching signature chain:
-------------------------
Chain start time: Wed Nov 18 21:16:30 2015
Chain end time: Wed Nov 18 21:16:30 2015
Number of contained backup sets: 1
Total number of contained volumes: 4
 Type of backup set:                            Time:      Num volumes:
                Full         Wed Nov 18 21:16:30 2015                 4
-------------------------
No orphaned or incomplete backup sets found.
user@net-storage:~/duplicity.sh$ duplicity remove-older-than 1D --force file:///mnt/backup/srv.misc/duplicity-test

Local and Remote metadata are synchronized, no sync needed.
Last full backup date: Wed Nov 18 21:16:30 2015
There are backup set(s) at time(s):
Tue Nov 17 21:43:28 2015
Which can't be deleted because newer sets depend on them.
No old backup sets found, nothing deleted.
user@net-storage:~/duplicity.sh$ date
Ср ноя 18 22:03:22 MSK 2015

Запускаю в 22.00 удалить бекап, если он старше 1-ого дня. Под условие попадает полный бекап от Nov 17 21:43:28 2015, инкрементальные же архивы, зависящие от данного полного под условие не попадают.

В итоге:

Which can't be deleted because newer sets depend on them.

Jurik_Phys ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.