Простой бекап сайтов и БД
В этом посте расскажу, как можно очень просто наладить систему резервного копирования файлов сайта и баз данных. Наверняка многие из вас сталкивались с проблемой организации резервного копирования сайтов. Сейчас раскажу об одном из вариантов организации такой системы.
Сейчас на рынке присутствует множество систем резервного копирования и восстановления, начиная от серьезных корпоративных решений от именитых фирм, кончая скриптами на bash, сделанными на коленке местными админами. В этой статье я рассскажу об одном простом, но малоизвестном способе.
Задача
Необходимо раз в N дней делать резверную копию всех баз данных сервера и файлов указанных сайтов.
Решение
Если на сервере стоит Webmin, то можно сделать следующее. Для бекапа баз данных заходим в модуль Servers -> MySQL Database Server. А внизу там есть кнопка “Backup databases”.
Потом видим окошко выбора времени бекапа в планировщике.
Указываем время и нажимаем кнопку. Отлично, теперь нам надо забекапить файлы. Идём в System -> Filesystem backup и добавляем туда правила для бекапа сайтов и папки куда сбекапились базы.
А самое интересное, что в настройках мы можем указать, чтобы webmin после создания архива сам закачивал их по FTP на другой сервер. Можно взять хостинг для бекапов (много места на диске + FTP) и складировать бекапы там. Единственное, на бекап сервере можно прописать в крон (после того, как с основного уже точно сольются все бекапы) вот такой скрипт:
rotate.sh
|
1 2 3 4 5 6 |
#!/bin/bash OUTPUT=~/backups/archive/$(date +%Y-%m-%d)/ BUDIR=~/backups/current/* echo "Starting backup of directory $BUDIR to file $OUTPUT" mkdir $OUTPUT cp -r -u -x -v $BUDIR $OUTPUT |
Ну вот и всё, бекапы сами делаются и сами заливаются на бекап-сервер!


