Система резервного копирования Bacula

И так рано или поздно приходят мысли сделать систему резервного копирования по взрослому , то есть систему клиент-сервер , резервное копирование разного уровня (полное , инкрементальное и т.д) , кросс платформенную ( что  очень гибко и удобно — если в компания использует множества ОС ) ,  возможность гибкого управления  и т.д

Мой выбор остановился на Bacula (она отвечает все нашим скромным требованиям + она  open source , что не может не радовать )

И так приступим :

Небольшой курс базовых понятий :

Director — это базовая главная часть , которая занимается координацией всех других частей и отвечает за работус  заданиями , восстановлением данных , управление и т.д

Сервер хранения — место где будет производится хранение данных .

Клиент (или файловый сервер) — это клиентская часть , которая будет принимать задания от директора

Для начало нам необходимо обновить порты (в общем эта процедура должна стать базовой при установки любого ПО на Freebsd)

# portsnap fetch

# portsnap extract

После чего

# cd /usr/ports/sysutils/bacula-server
# make install clean

Выбираем нужные нам опции , я выбрал : поддержку MySQL и NLS

Далее вам необходимо создать пользователя Mysql для Bacula , базу данных и привелегии  — об этом разработчики уже позаботились — чем мы и воспользуемся :

/usr/local/share/bacula/grant_mysql_privileges -u root -p    - если у вас root для mysql без пароля тогда можно просто без доп. атрибутов выполнить эти скрипты - который все сделает за нас .  + еще запустить пару 

#/usr/local/share/bacula/create_mysql_database -u root -p

#/usr/local/share/bacula/make_mysql_tables  -u root -p

И далее добавим систему резервного копирования в автозагрузку :

# echo 'bacula_dir_enable="YES"' >> /etc/rc.conf
# echo 'bacula_sd_enable="YES"' >> /etc/rc.conf