резервное копирование в Linux — duplicity HOW-TO

Запись создана 1 мая, 2009

Самое простое что можно придумать, когда админ задумывается о резервном копировании данных это набор самописных скриптов с использованием tar. Неплохое решение, но заморачивание с этим насаждением скриптов, из которых в конце концов придется вырасти, пустая трата времени на мой взгляд.

предлагаю простое решение, как в разворачивании, так и в эксплуатации. Покажу на примере CentOS.
Подключите репозитарии dag и epel, затем в консоли выполните команду:
[cc lang=»bash»]
yum install duplicity python-GnuPGInterface -y
[/cc]

на этом установка завершена, теперь к практике эксплуатации. Предположим, нам нужно делать резервные копии /home на смонтированный в /backup диск диск. Для начала создадим full backup.
[cc lang=»bash»]
/usr/bin/duplicity full —no-encryption /home/ file:///backup/
[/cc]
теперь добавим в cron задание на инкрементальное резервное копирование:
[cc lang=»bash»] crontab -e [/cc]
строчку:
[cc lang=»bash»]0 3 * * * /usr/bin/duplicity incremental —no-encryption /home/ file:///backup/[/cc]

duplicity умеет шифровать резервные копии, это удобно если резервные копии планируется хранить не на 100% надежном сервере или при паранойи у руководства. Для шифрования резервных копий, создайте ключ:
[cc lang=»bash»]gpg —gen-key[/cc]
и заменив --no-encryption на --encrypt-key="YOUR-KEY"

Опять таки, раз речь зашла о резервном копировании на другой сервер, то нельзя не упомянуть о том что duplicity умеет делать копии по rsync scp ftp webdav ssh. Подробнее в duplicity --help

Восстановление тоже просто:
[cc lang=»bash»]duplicity restore —no-encryption -t2009-05-01 file:///backup/ /home/restore/[/cc]

Посмотреть статус хранилища резервных копий можно командой:
[cc lang=»bash»]
duplicity collection-status file:///home/backup/
[/cc]

» Запись из раздела CentOS Linux | 3 комментария

Комментарии



3 комментария to “резервное копирование в Linux — duplicity HOW-TO”

  1. guest on 25 июня, 2009 14:00

    У меня не все так просто. Восстанавливает только самый последний бэкап. Если в хранилище бэкапа удалить все инкрементальные бэкапы и оставить полный — восстановит полный. Версия 0.5.18

  2. OpenSuSE on 19 августа, 2010 9:43

    Спасибо! Сэкономил кучу времени благодаря статье :)

  3. Артем on 5 октября, 2011 21:59

    На дебиане поймал очень не хороший глюк:
    После удаления инкрементальных бэкапов ( /usr/bin/duplicity remove-all-inc-of-but-n-full 1 —force file:///мой_путь/)

    AttributeError: BackupChain instance has no attribute ‘archive_dir’
    Удаление кэша не спасает, может сталкивались с таким?




Ответить