Цель
- Резервное копирование файлов проектов
- Дамп базы данных проектов (MySQL)
- Выгрузка дампов на удаленный FTP сервер
Средства
В качестве средства для резвного копирования был выбран fsbackup, в силу того, что отвечал нашим целям.
Система fsbackup была создана для обеспечения резервного копирования серверов разного масштаба на специально отведенном сервере бэкапа.
Установка
make install
Более подробно о работе с Портами и пакетами во FreeBSD, а так же о обновлении дерева портов и установленных пакетов.
Настройка
Создаем директорию для архивов
Сделаем резервную копию и отредактируем конфигурационный файл
vi server_backup.conf
Там все просто, да еще и на русском 🙂
Теперь укажите используемый конфигурационный файл в create_backup.sh
Настройки для FTP
Файл server_backup.conf
$cfg_type = «remote_ftp»;# Сервер на который будет копироваться бэкап.
$cfg_remote_host = «server.remote.ru:21»;
# Логин под которым будет сохранятся бэкап.
$cfg_remote_login = «backup_login»;
# Директория куда должны помещаться файлы бэкапа, директория должна присутствовать.
$cfg_remote_path = «/home/backup_login/backup»;
# пароль для входа по ftp.
$cfg_remote_password = «backup_password»;
Указываем директории и файлы для бэкапа
Доходим до $cfg_root_path и указываем корневую директорию, относительно которой описаны пути для помещения файлов (См. __DATA__).
Указываем директории и файлы для бэкапа (директива __DATA__)
/usr/local/fsbackup
!/usr/local/fsbackup/cache
f!.core$
f!^core$
f!.o$
f!.log$
# BSD
/var/db/pkg
/usr/src/sys/i386/conf
# Users and PROJECT’s
/home
/root
!/home/ftp
=!.netscape/cache/
=!.mozilla/.*/Cache/
=!.mozilla/.*/NewCache/
=!.mozilla/.*/News/
f!.*.avi$
f!.*.mpeg$
f!.*.mpg$
f!.*.mp3$
# System configuration
/etc
/var/cron/tabs
/var/spool/cron
/usr/local/etc
MySQL бэкап
Для бэкапа MySQL надо отредактировать ./scripts/mysql_backup.sh
Указываем логин, пароль, указываем какие БД нам дампить.
А также необходимо отредактировать стартовый файл ./create_backup.sh и указать что нам нужен бэкап MySQL!
Далее, добавляем в крон запись
0 4 * * * /usr/local/fsbackup/create_backup.sh| mail -s»`uname -n` backup report» root
Краткая справка по крону и шпаргалка.
Секурность!
По поводу шифрования бэкапа смотрите http://www.opennet.ru/dev/fsbackup/#shi
Восстановление данных
Для полного восстановления данных из инкрементального бэкапа может использоваться скрипт ./scripts/fsrestore.sh, для восстановления просто отредактируйте пути внутри скрипта и запустите его.
Добавить комментарий