Backupninja позволяет вам координировать резервное копирование системы, помещая несколько простых файлов конфигурации в /etc/backup.d/. Большинство программ, которые вы можете использовать для создания резервных копий, не имеют собственного формата файла конфигурации. Backupninja предоставляет централизованный способ настройки и координации множества различных утилит резервного копирования..
Установка backupninja
Чтобы установить backupninja, вам необходимо войти на свой сервер и выполнить следующие команды:
Ubuntu / Debian
apt update -y
apt install backupninja
RHEL & Centos
dnf install epel-release
dnf install backupninja duplicity rdiff-backup
Конфигурация Backupninja
Приложение backupninja поставляется с удобным мастером, который поможет вам настроить резервное копирование..
# ninjahelper

MySQL backup
Выберите создание нового действия резервного копирования для базы данных MySQL.
Далее укажите директорию для хранения бекапов.
Если вам нужно сделать резервную копию всех баз данных, нажмите ДА, в противном случае вам нужно будет ввести имя базы данных для резервного копирования..
Далее нужно настроить метод аутентификации, я выберу пароль.
Выберите вариант резервного копирования с помощью пробела.
Готово, резервная копия MySQL настроена.
Теперь вы можете просматривать, редактировать, отключать, переименовывать, запускать, тестировать или удалять конфигурацию..

Резервное копирование директорий
У меня размещены несколько веб-сайтов на сервере, поэтому я хочу сохранить файлы веб-сайтов в безопасности, для этого мне нужно создать новое правило резервного копирования. В моем случае я выберу резервную копию TAR.
Нужно указать имя и путь для бекапа.
Далее нужно указать что архивировать и указать исключения.
Готово, бэкап настроен.
Автоматизация бекапа
Я просто добавлю в свой cron следующую строку, чтобы резервное копирование могло запускаться каждый день в 2 часа ночи.
0 2 * * * /usr/sbin/backupninja --now
Удаление файлов из бекапа
Резервные копии tar по умолчанию не имеют ротации, поэтому вам следует добавить следующий скрипт в cron для удаления файлов старше 14 дней.
0 1 * * * find /path/to/backup/* -type f -mtime +14 -exec rm -f {} \;