Резервные копии Backup Rsync по расписанию

Резервные копии Backup Rsync по расписанию

Сообщение ALEXX » 08 фев 2020, 09:56

Production Server 192.168.1.100
Backup Server 192.168.1.101
Подготовим Backup Server для хранения резервных копий.
Устанавливаем Rsync и Rdiff-backup
Код: выделить все
apt update
apt install rsync && apt install fdiff-backup

Убедитесь, что на Production Server с которого будем делать бэкапы установлен Rsync. Если его нет устанавливаем.
Создаем на Backup Server пару папок (одна для полного бэкапа, одна для инкрементного). Сохраняем в моем случае в хомяке.
Код: выделить все
mkdir /home/username/backup-test
mkdir /home/username/backup-test/data
mkdir /home/username/backup-test/increment


Создаем на Backup Server пару ключей для беспарольного доступа по ssh:
Код: выделить все
ssh-keygen

Тут поинтересуются что делать... даем имя нашим ключам:
Код: выделить все
Generating public/private rsa key pair.
Enter file in which to save the key (/home/username/.ssh/id_rsa): namekeyssh

Дальше просто два раза нажимаем Enter если не хотите создавать пароли.
Копируем наш публичный ключ на Production Server:
Код: выделить все
ssh-copy-id -i /путь_до/ключа/namekeyssh.pub username@192.168.1.100

Вводим пароль и если все верно, получаем доступ.
Делаем первое копирование ( в зависимости от размера, это затянуться на продолжительное время. Параметр --delete удаляют локальную копию, если она была удалена на Production Server.
Код: выделить все
rsync --delete -e "ssh -i /путь_до/ключа/namekeyssh" -zauP username@192.168.1.100:/путь/откуда/копируем /home/username/backup-test/data

удаляем старые копии возраст одна неделя. Делаем инкрементное копирование:
Код: выделить все
rdiff-backup --remove-older-than 1W /home/username/backup-test/increment

Код: выделить все
rdiff-backup -v5 --print-statistics /home/username/backup-test/data/  /home/username/backup-test/increment

Создаем расписание для автоматического выполнения:
Код: выделить все
crontab -e

Приводим его к виду:
Код: выделить все
0 2 * * * rsync --delete -e "ssh -i /путь_до/ключа/namekeyssh" -zauP username@192.168.1.100:/путь/откуда/копируем /home/username/backup-test/data
0 4 * * * rdiff-backup --remove-older-than 1W /home/username/backup-test/increment
0 6 * * * rdiff-backup -v5 --print-statistics /home/username/backup-test/data/  /home/username/backup-test/increment

Сохраняем. Теперь команды будут выполняться ежедневно в 2/4/6 часов.
Я не совсем понял как вывести полные логи... Возможно этот вариант не самый лучший. Но у меня работает.
Аватар пользователя
ALEXX
Администратор
Администратор
 
Автор темы
Сообщений: 1210
Фото: 44
Стаж: 5 лет 2 месяца
Откуда: Королёв
Благодарил (а): 343 раз.
Поблагодарили: 190 раз.

Резервные копии Backup Rsync по расписанию

Спонсировать форум

Спонсор
 

Вернуться в Серверы

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron