Автоматизация backup'а данных
Используем FSBACKUP - система инкрементального резервного копирования и синхронизации ФС. Взятый отсудова
Качаем его: wget http://www.opennet.ru/dev/fsbackup/src/fsbackup-1.2pl2.tar.gz
распаковываем: tar -zxvf fsbackup-1.2pl2.tar.gz
переходим в распакованную директорию: cd fsbackup-1.2pl2
запускаем инсталятор:
./install.pl
Установили, значит… ну читаем мануал :) Данной системой поддерживается несколько видов сохранения бакапов:
- на локальном сервере
- по FTP протоколу на другом сервере
- по SSH протоколу также на другой машине
Ну у нас пока некуда сохранять кроме как себе, будем сохранять пока у себю.
Переходим в каталог куда установили: cd /usr/local/fsbackup
Создадим каталоги куда будет делаться архив (ну непомню я создались ли они по умолчанию): mkdir archive mkdir sys_backup
Создаем файл конфигурации нашего backup’а nano cfg
$cfg_backup_name = "server_backup";
$cfg_cache_dir = "/usr/local/fsbackup/cache";
$prog_md5sum = "/usr/bin/md5sum -b";
$prog_tar = "/bin/tar";
$prog_ssh = "/usr/bin/ssh";
$prog_rm = "/bin/rm";
$prog_gzip = "/bin/gzip";
$prog_pgp = "/usr/bin/gpg";
$cfg_checksum = "timesize";
$cfg_backup_style = "backup";
$cfg_increment_level = 7;
$cfg_save_old_backup = 1;
$cfg_type = "local";
$cfg_local_path = "/usr/local/fsbackup/archive";
$cfg_time_limit = 0;
$cfg_size_limit = 0;
$cfg_maximum_archive_size = 0;
$cfg_root_path = "/";
$cfg_verbose = 2;
$cfg_stopdir_prune=0; 1;
__DATA__
/web
/etc
/home
Ну а теперь нам нужно редактировать скрипт запуска бэкапа: nano create_backup.sh в нем нужно привести одну строку к такому виду: config_files=“cfg” для использования нашего конфига и строку backup_mysql=1 для бэкапа баз данных
Ну а раз указали архивирование баз данных, значит нужно настроить и скрипт: nano scripts/mysql_backup.sh Меняем строки: backup_mysqluser=“root” backup_mysqlpassword=“пароль”
Запускаем ./create_backup.sh Нет ошибок? Значит первый наш backup создан и лежит в папках arhive и sys_backup
Ну а автоматизировать это не значит постоянно запускать в ручную, поручим это cron’у: crontab -e
добавим строки: MAILTO=ваша_почта@домен 0 0 * * * /usr/local/fsbackup/create_backup.sh
Теперь в 0 часов 0 минут ежедневно будет запускаться бэкап данных нашего сервера.
Фсе :)