Команды компиляции и установки для Bacula Community 9.0.8

Скачать код Bacula (идентично для Клиента и Сервера)

Пройдите по ссылке и скачайте последнюю версию файла bacula-x.x.x Source.tar.gz <https://sourceforge.net/projects/bacula/files/bacula/> или скачайте его же с этого вебсайта, распакуйте и переместите в месторасположение кода (/usr/src/bacula*) с помощью следующих команд:

wget -qO- http://bacula.us/current | tar -xzvf - -C /usr/src

Пути установки и компиляция Bacula на серверах Linux

a.1) Debian 8 / Ubuntu:

# Mysql:
apt-get install -y build-essential libreadline6-dev zlib1g-dev liblzo2-dev mt-st mtx postfix libacl1-dev libssl-dev libmysql++-dev mysql-server

# Postgresql:
apt-get install -y build-essential libreadline6-dev zlib1g-dev liblzo2-dev mt-st mtx postfix libacl1-dev libssl-dev postgresql-server-dev-9.6 postgresql-9.6

a.2) CentOS 7 / RedHat:

Чтобы установить зависимости, введите следующее:

# Mysql:
yum -y install gcc-c++ readline-devel zlib-devel lzo-devel libacl-devel mt-st mtx postfix openssl-devel mariadb-devel

# Postgresql:
yum -y install gcc-c++ readline-devel zlib-devel lzo-devel libacl-devel mt-st mtx postfix openssl-devel postgresql-devel

Добавьте правильные исключения, необходимые для работы Bacula с IPTABLES / Firewalld:

# IPTABLES
-A FW-1-INPUT -m state --state NEW -m tcp -p tcp --dport 9101:9103 -j ACCEPT

# Firewalld
firewall-cmd --permanent --zone=public --add-port=9101-9103/tcp
firewall-cmd --reload

Отключите Selinux временно или постоянно, или изучите и примените политику Bacula.

setenforce 0
sudo sed -i "s/enforcing/disabled/g" /etc/selinux/config
sudo sed -i "s/enforcing/disabled/g" /etc/sysconfig/selinux

b) Конфигурация компиляции

Перейдите к настройке кода, изменяя последние строки как показано ниже (обычно изменяют последние три):

# Mysql:
cd /usr/src/bacula*
./configure --with-readline=/usr/include/readline --disable-conio --bindir=/usr/bin --sbindir=/usr/sbin --with-scriptdir=/etc/bacula/scripts --with-working-dir=/var/lib/bacula --with-logdir=/var/log --enable-smartalloc --with-mysql --with-archivedir=/mnt/backup --with-job-email=your@email.com.br --with-hostname=ip_or_qualified_name

# Postgresql:
cd /usr/src/bacula*
./configure --with-readline=/usr/include/readline --disable-conio --bindir=/usr/bin --sbindir=/usr/sbin --with-scriptdir=/etc/bacula/scripts --with-working-dir=/var/lib/bacula --with-logdir=/var/log --enable-smartalloc --with-postgresql --with-archivedir=/mnt/backup --with-job-email=your@email.com.br --with-hostname=ip_or_qualified_name

c) Для сборки, установки и включения процесса Bacula во время загрузки — следующее:

make -j8 && make install && make install-autostart

d) Подготовка базы данных:

Создайте базу данных Bacula, соответствующие таблицы и установите разрешения для скриптов. Если используется MySQL:

# MySQL:
chmod o+rx /etc/bacula/scripts/*
/etc/bacula/scripts/create_mysql_database -u root -p && 
/etc/bacula/scripts/make_mysql_tables -u root -p && 
/etc/bacula/scripts/grant_mysql_privileges -u root -p

От Вас потребуется ввести пароль коренного пользователя MySQL.

В случае использования базы данных POSTGRESQL последовательность действий следующая:

# Postgresql:
postgresql-setup initdb
sed -i 's/peer/trust/g' /var/lib/pgsql/data/pg_hba.conf 
sed -i 's/ident/trust/g' /var/lib/pgsql/data/pg_hba.conf
service postgresql start
chkconfig postgresql on
cp /etc/bacula/scripts/* /tmp
sudo -u postgres /tmp/create_postgresql_database 
sudo -u postgres /tmp/make_postgresql_tables
sudo -u postgres /tmp/grant_postgresql_privileges

e) Инициируйте первичный запуск процессов Bacula

service bacula-fd start && service bacula-sd start && service bacula-dir start

Введите bconsole в оболочке для доступа к Bacula CLI.

bconsole
Connecting to Director localhost:9101
1000 OK: debian-dir Version: 7.4.0 (16 January 2016)
Enter a period to cancel a command.
*

Команды для компиляции и установки на Linux (только для стороны-клиента)

a) Скачать код Bacula (идентично для Клиента и Сервера)

Пройдите по ссылке и скачайте последнюю версию файла bacula-x.x.x Source.tar.gz <https://sourceforge.net/projects/bacula/files/bacula/> или скачайте его же с этого вебсайта, распакуйте и переместите в месторасположение кода (/usr/src/bacula*) с помощью следующих команд:

wget -qO- http://bacula.us/current | tar -xzvf - -C /usr/src

b) Определение зависимостей и подготовка в целом:

b.1) Debian 8 / Ubuntu:

apt-get install -y build-essential zlib1g-dev liblzo2-dev libacl1-dev libssl-dev
cd /usr/src/bacula*

b.2) CentOS / RedHat:

yum -y install gcc-c++ zlib-devel lzo-devel libacl-devel openssl-devel
cd /usr/src/bacula*

Добавьте исключения, необходимые для работы Bacula с IPTABLES:

# Iptables
-A FW-1-INPUT -m state --state NEW -m tcp -p tcp --dport 9102 -j ACCEPT

# Firewalld
firewall-cmd --permanent --zone=public --add-port=9102/tcp
firewall-cmd --reload

Отключите Selinux временно или постоянно, или изучите и примените политику Bacula.

setenforce 0
sudo sed -i "s/enforcing/disabled/g" /etc/selinux/config
sudo sed -i "s/enforcing/disabled/g" /etc/sysconfig/selinux

c) Конфигурация компиляции

./configure --enable-client-only --enable-build-dird=no --enable-build-stored=no --bindir=/usr/bin --sbindir=/usr/sbin --with-scriptdir=/etc/bacula/scripts --with-working-dir=/var/spool/bacula/ --with-logdir=/var/log --enable-smartalloc

d) Для сборки, установки и включения процессов bacula-fd на старте системы:

make -j8 && make install && make install-autostart-fd

e) Запустите процессы Bacula Client:

service bacula-fd start

Установка клиента для Windows:

Пройдите по ссылке http://blog.bacula.org/download-center/ и скачайте наиболее новый установочный пакет в соответствии с вашей архитектурой операционной системы (32 бита или 64 бита), или скачайте оба варианта с этого сайта: 

http://www.bacula.us/winclients

Запустите установщик.

Когда предоставится возможность — выберите Custom Installation; Client and Plugins components. 

Установщик также попросит предоставить информацию касательно имени Директора (того, кто руководит бэкап-сервером на Linux). Для получения этой информации необходимо использовать следующую команду на той самой Linux системе:

bconsole
Connecting to Director localhost:9101
1000 OK: debian-dir Version: 7.4.0 (16 January 2016)
Enter a period to cancel a command.
*

В данном случае имя Директора — debian-dir.

Продолжайте процесс установки до его полного завершения. Закройте все последующие диалоговые окна. 

Bacula-fd в системе Windows уже должна работать на этой стадии (можно увидеть через services.msc) и может быть свободно присоединен к Директору Bacula через добавление соответствующих Ресурсов Клиента в bacula-dir.conf. Но данная тема уже должна рассматриваться более тематическими материалами.