Сейчас 127 заметки.

Резервное копирование backup-manager

Материал из ЗАметки

Резервное копирование с помощью backup-manager

Установка и конфигурирование backup-manager

backup-manager — это набор скриптов для резервного копирования данных, доступный в репозиториях Debian‘а. Установить его довольно просто


apt-get install backup-manager

Все настройки хранятся в одном конфигурационном файле, который и редактируем


sudo nano /etc/backup-manager.conf

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


export BM_REPOSITORY_ROOT="/backup/archives"

Владелец файлов и права доступа


export BM_REPOSITORY_USER="root"
export BM_REPOSITORY_GROUP="root"


export BM_REPOSITORY_CHMOD="770"

Указываем типы архивирования: инкрементный бэкап и бэкап баз данных

export BM_ARCHIVE_METHOD="tarball-incremental mysql"

Без шифрования - false


export BM_ENCRYPTION_METHOD="false"


export BM_ENCRYPTION_RECIPIENT=""

Тип архивов — tar.gz


export BM_TARBALL_FILETYPE="tar.gz"

При архивировании backup-manager не будет следовать по символическим ссылкам


export BM_TARBALL_DUMPSYMLINKS="false"

Собственно, то, что буде бэкапить. Перечисляем директории через пробел

export BM_TARBALL_DIRECTORIES="/etc /home/user0 /home/user1"

Если в имени директории или файла есть пробел, то можно использовать массив

BM_TARBALL_TARGETS[0]="/path/with space"


BM_TARBALL_TARGETS[1]="/path/with space"

Указываем исключения в случае необходимости (то, что не будем копировать)

export BM_TARBALL_BLACKLIST="/home/user0/blacklist"

Настраиваем расписание резервного копирования. Мастер-бэкап (полная копия) будет создаваться каждую неделю, а инкрементные бэкапы — каждый день


export BM_TARBALLINC_MASTERDATETYPE="weekly"
export BM_TARBALLINC_MASTERDATEVALUE="1"

Указываем базы данных MySQL, которые хотим сохранить (можно указать __ALL__ для бэкапа всех баз)

export BM_MYSQL_DATABASES="__ALL__"

Данные для подключения к MySQL


export BM_MYSQL_ADMINLOGIN="mysqlusername"
export BM_MYSQL_ADMINPASS="mysqlpassword"
export BM_MYSQL_HOST="localhost"
export BM_MYSQL_PORT="3306"

Метод сжатия дампов баз данных

export BM_MYSQL_FILETYPE="bzip2"

Сохраняем изменения в файле и проверяем


sudo backup-manager

Если все нормально, бэкапы создаются, то остается только добавить запуск backup-manager по расписанию в Cron


sudo nano /etc/crontab

Необходимо добавить строку вида


59 23   * * *   root    backup-manager