Друзья, в этой статье кратко постараюсь расписать, как я решил проблему автоматического создания бэкапов на VDS Timeweb. Инструкция описывается для VDS на Ubuntu.
Как работает создание бэкапов по моей логике:
- в 03:00 по МСК создается бэкап файлов всех сайтов;
- в 03:30 по МСК создается дамп базы данных;
- в 22:00 по МСК удаляются бэкапы файлов и базы данных из файловой системы.
Итого у меня есть время с 3-х часов ночи до 22 часов вечера скачать текущий бэкап. Частоту создания и удаления бэкапов можно редактировать в планировщике (cron). На основе подобной инструкции вы сможете подстроить создание резервных копий под свои нужды.
Первый этап
Настраиваем резервное копирование через cron.
Бэкапим файлы сайтов. Заходим в ispmanager->система->планировщик. Жмем "создать" и пишем:
zip -r /var/$(date +\%d-\%m-\%Y).zip /var/www/www-root/data/www
Ставим галочку напротив "включено". Выполнять - ежедневно. Выполнить в - 3 часов. В 03:00 в папке var будет создан архив с текущей датой, например - 02-05-2017.zip. В архиве будут все сайты, находящиеся на VDS.
Сохраните задание и протестируйте его, нажав "Выполнить" в планировщике. Планировщик задумается на 2-3 минуты, всё зависит от количества файлов в системе. Результатом должен стать архив с бекапом в папке /var/. Архив можно увидеть через менеджер файлов в ispmanager.
Бэкапим базу данных. Заходим в ispmanager->система->планировщик. Жмем "создать" и пишем:
/usr/bin/mysqldump -u имя_пользователя -p 'пароль_к_бд' имя_бд > /var/$(date +\%d-\%m-\%Y).sql
Ставим галочку напротив "включено". Выполнять - ежедневно. Выполнить в - 3 часов 30 минут. В 03:30 в папке var будет создан бэкап базы данных с текущей датой, например - 02-05-2017.sql. Если у вас несколько баз данных, для каждой создавайте отдельное задание в планировщике.
Второй этап
Удаление бэкапов. Удалять бэкапы нужно, чтобы не засорять файловую систему сервера. Свободное место имеет свойство быстро кончаться.
Заходим в ispmanager->система->планировщик. Жмем "создать" и пишем:
rm /var/$(date +\%d-\%m-\%Y).zip
Ставим галочку напротив "включено". Выполнять - ежедневно. Выполнить в - 22 часов 00 минут. В 22:00 будет удален архив с файлами ваших сайтов. Аналогично создаем задание для удаления бекапа базы данных. Для ленивых:
rm /var/$(date +\%d-\%m-\%Y).sql
Третий этап
Как удобно скачивать бэкапы?
Подготовка:
- Идем по ссылке и качаем файл pscp.exe. Я его положил на диск "C" в папку "Загрузки".
- Запоминаем текущую дату в формате 02-05-2017.
- Создаем папку на локальном диске C с именем "backups".
Открываем командную строку windows (cmd). Переходим в папку загрузки:
cd C:\Users\ВАШЕ_ИМЯ_ПОЛЬЗОВАТЕЛЯ_WINDOWS\Downloads
Качаем архив с файлами:
pscp.exe root@IP_адрес_сервера:/var/текущая_дата.zip "C:\backups"
Введите пароль root, начнется копирование архива на локальный диск.
Качаем архив с базой данных:
pscp.exe root@IP_адрес_сервера:/var/текущая_дата.sql "C:\backups"
Идем в локальный диск C, открываем папку backups и видим свежий архив с бэкапом=)
Комментарии