Установка Bareos на FreeBSD
Bareos[1] — кроссплатформенное клиент-серверное программное обеспечение, позволяющее управлять резервным копированием, восстановлением, и проверкой данных по сети для компьютеров и операционных систем различных типов. В 2010 году активные контрибьюторы в проекте Bacula, не согласные с политикой развития проекта, форкнули OpenSource-часть в новый проект Bareos. В частности, претензии были связаны с тем, что создатели Bacula направили свои усилия на закрытие исходного кода, внося изменения только в "закрытую" часть проекта, перестали принимать в проект сторонние патчи, и даже начали сокращать функционал "свободной" версии пакета.
К сожалению, в сети толковых инструкций я не нашёл. В официальной документации раздела с установкой на FreeBSD нет, а "из коробки" оно не заводится, хотя и не всё так плохо.[2].
Установка
При установке Bareos через pkg серверная часть будет работать на PostgreSQL. Меня это не устраивало, т.к. на сервере уже был MySQL. Попытки подсовывать нужные sql-файлы и библиотеки я отбросил, т.к. для этого требовалось много телодвижений для копирования и скачивания из разных мест. Проблема решалась старой доброй системой портов.
# cd /usr/ports/sysutils/bareos-server # make config install

В данной установке я выбрал все опции, кроме changer'а, т.к. у меня нет ленточных накопителей. Ниже я поменял используемую БД на MySQL.
Остальные компоненты системы не требуют изменений в процесс установки, поэтому я использую pkg:
# pkg install bareos-client bareos-webui
Настройка
База данных
- Создаём базу данных bareos:
mysql> CREATE DATABASE bareos;
- Создаём пользователя bareos c паролем bareos и назначаем ему права на базу данных bareos:
mysql> GRANT ALL ON bareos.* TO bareos@localhost IDENTIFIED BY 'bareos'; mysql> FLUSH PRIVILEGES;
- Импортируем дамп:
$ mysql -ubareos -pbareos bareos < /usr/local/lib/bareos/scripts/ddl/creates/mysql.sql
Конфиги
Добавляем в /etc/rc.conf:
bareos_dir_enable="YES" bareos_fd_enable="YES" bareos_sd_enable="YES"
В одной из новых версий Bareos изменили логику работы конфигов. Теперь это не один большой файл, а куча мелких, разделённых на папки. Проблема в том, что по умолчанию Bareos пытается искать именно старый добрый файл и не стартует. Для исправления этой проблемы мы добавляем в /etc/rc.conf следующие директивы:
bareos_dir_config="/usr/local/etc/bareos" bareos_fd_config="/usr/local/etc/bareos" bareos_sd_config="/usr/local/etc/bareos"
Примечания
- ↑ Bareos - Open Source Data Protection (официальный сайт)
- ↑ При написании статьи использовались следующие версии программного обеспечения: FreeBSD 11.0 amd64, Bareos 16.2.6, nginx 1.12.1, PHP 5.6.31.