Содержание

Резервное копирование при помощи SkyCover Duply

Применимость: Linux

Задача:

Нужно регулярно создавать резервные копии каталога с конфигурационными файлами системы и вебсервера

Решение:

SkyCover Duply (scduply) — это инструмент для управления резервным копированием, на основе конфигурационных файлов и простых команд.

scduply основан на коде duply и использует для резервного копирования программу duplicity.

Отличительные особенности:

Установка

Нужно установить пакеты duplicity и git

# команда для Debian/Ubuntu:
apt-get install duplicity git
# команда для RHEL/CentOS:
yum install duplicity git
# устанавливаем scduply
git clone git://github.com/skycover/scduply.git
cd scduply
./install.sh

Примечание: если Вам не удается получить scduply посредством git, Вы можете скачать установить его из tarball-а:

wget https://github.com/skycover/scduply/tarball/master -O scduply.tar.gz
tar zxvf scduply.tar.gz
cd skycover-scduply-*
./install.sh

Генерируем ключи шифрования и подписи

gpg --gen-key # запомнить ID ключа и пароль ключа

генерируем ключи ssh (если надо)

ssh-keygen

Настройка

Если Вы собираетесь хранить конфигурацию в /etc (доступно только при запуске scduply от root), создайте каталог /etc/scduply:

mkdir /etc/scduply

Иначе конфигурация автоматически разместится в $HOME/.scduply

Инициируем базовый конфиг

scduply init

*** The scduply initialized in '/etc/scduply'.
The initial global config file is '/etc/scduply/conf'

Отредактируйте файл /etc/scduply/conf

В качестве TARGET можно использовать разные варианты, примеры есть в конфиге Например для сохранения на примонтированном диске или NFS каталоге можно указать:

TARGET='file:///mnt/backup/'

Настройка задания

scduply <ЗАДАНИЕ> create

<ЗАДАНИЕ> — имя задания. Будет создан подкаталог с этим именем и шаблонами настроек.

Например для резервирования /etc я создам задание с именем ETC

scduply ETC create

*** Created profile 'ETC'.
The backup source path is '/etc/scduply/ETC/source'.
The exclude globing list is '/etc/scduply/ETC/exclude'.
The initial config file is '/etc/scduply/ETC/conf'.

IMPORTANT:
  The profile folder is '/etc/scduply/ETC'.
  Copy the _whole_ profile folder after the first backup to a safe place.
  It contains everything needed to restore your backups. You will need 
  it if you have to restore the backup from another system (e.g. after a 
  system crash). Keep access to these files restricted as they contain 
  _all_ informations (gpg data, ftp data) to access and modify your backups.

  Repeat this step after _all_ configuration changes. Some configuration 
  options are crucial for restoration.

Нужно будет настроить 3 файла

При указании путей надо использовать поный путь от корня ФС.

Файл /etc/scduply/ETC/exclude позволяет использовать шаблоны исключений. Двойная звездочка означает «исключить все

+ /home/dmi/Documents
+ /home/dmi/Photo
- **

Этот вариант будет бэкапить /home/dmi/Documents и /home/dmi/Photo, а все остальное будет исключено

Если Вы хотите, чтобы задание не вызывалось при пакетном запуске командой bkpall (бэкапить все задания), создайте пустой файл /etc/scduply/<JOB>/skip

Резервное копирование

Не забудьте сперва указать какую директорию копировать в файле /etc/scduply/<Имя задания>/source
scduply ЗАДАНИЕ backup

или, для бэкапа всех заданий

scduply bkpall

Если в глобальном файле конфигурации настроить переменные MAIL_*, то bkpall будет отсылать по e-mail отчет со сводкой по всем заданиям и журналом.

Восстановление

scduply ЗАДАНИЕ restore КАТАЛОГ-КУДА

Восстановление на 4 дня назад

scduply ЗАДАНИЕ restore КАТАЛОГ-КУДА 4D

Восстановление на 4 дня назад, только каталог will_be_lost

scduply ЗАДАНИЕ restore КАТАЛОГ-КУДА 4D --file-to-restore will_be_lost

Проверка состояния

scduply ЗАДАНИЕ status

Список файлов

scduply ЗАДАНИЕ list [ВОЗРАСТ]

Технические подробности

При начальной инициализации scduply для сохранения настроек использует каталог /etc/scduply (если он был создан до инициализации и программа запущена от root), или каталог ~/.scduply.

В каталоге настроек лежит глобальный файл конфигурации и создаются подкаталоги с профилями заданий бэкапа.

Каждый покаталог задания имеет файлы:

При резервном копировании scduply создает журнал работы duplicity и записывает его в каталог ~/.scduply/log/ — при локальной установке и /var/log/scduply — при установке в /etc/scduply.

Дополнительная информация

Для более эффективного применения предлагаемых средств резервного копирования, пожалуйста, ознакомьтесь со следующими материалами:

man duplicity
sdcuply usage
man scduply

Восстановление после потери оборудования

Для восстановления данных из архива в случае потери оборудования, Вам понадобиться:

Минимальный набор:

Эти данные необходимо скопировать на переносной носитель (например, USB-Flash) и хранить в секретном месте, обязательно вне офиса. Копия данных ОБЯЗАТЕЛЬНО должна быть у руководителя предприятия и храниться вне офиса.

Полный набор:

Полный набор, необходимый для комфортного восстановления, включает:

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

Настройки находится в каталоге/etc/scduply (если он был создан до инициализации и программа запущена от root), или в каталоге ~/.scduply.

Журналы резервного копирования записываются в каталог ~/.scduply/log — при локальной установке и /var/log/scduply — при установке в /etc/scduply.

Смотрите также:

—- Актуальность: 2013/11/13 14:05