Клиенту сообщаем:

  1. Как его зовут

  2. Другую основную служебную информацию
  3. Где директор и как с ним общаться

  4. Как и куда сообщать о своем состоянии и работах

Установка пакетов

Установка пакетов для работы клиента может быть выполнена командой:

 sudo apt install bacula-fd

Файл конфигурации Bacula FileDaemon

Файл конфигурации Bacula FileDaemon по умолчанию /etc/bacula/bacula-fd.conf имеет в себе много строк, в которых много служебной информации и примеры.

Нам все это не нужно.

Создадим папку куда сложим бекапы файлов конфигурации Bacula по умолчанию:

sudo mkdir /etc/bacula/backup-default-conf
Сделаем резервную копию файла конфигурации:
sudo mv /etc/bacula/bacula-fd.conf /etc/bacula/backup-default-conf/bacula-fd.conf
Создадим новый основной файл конфигурации (пустой):
sudo touch /etc/bacula/bacula-fd.conf

Основная конфигурация Клиента (Main conf)

при копировании проверяйте правильность указанных IP адресов

FileDaemon {

# Имя клиента

Name = dir-fd

какой порт слушать (используется значение по умолчанию)

FDport = 9102

папка в которой лежат статус-файлы Клиента

WorkingDirectory = /var/lib/bacula

pid-файл демона Клиента

Pid Directory = /run/bacula

# Максимальное количество выполняемых заданий.

# (не рекомендуется одновременно запускать более одного задания)

Maximum Concurrent Jobs = 1

# возможность расширений FD,

расширения оформляются в виде разделяемых библиотек (имя-fd.so) и помещаются в указанный каталог

Plugin Directory = /usr/lib/bacula

fqdn имя или IP-адрес Клиента

FDAddress = 192.168.244.90

}

Подключение Директора к этому Клиенту

Далее нам необходимо сконфигурировать подключение Директора к этому Клиенту, добавив в этот файл ( /etc/bacula/bacula-fd.conf ) следующее:

Director {

# Имя Директора который может подключаться к этому Клиенту

Name = dir-dir

# Пароль подключения к этому Клиенту

Password = "clientpass"

}

Поведение уведомлений Клиента

Заканчивается настройка Клиента конфигурацией поведения уведомлений.

Messages {

Name = Standard

director = dir-dir = all, !skipped, !restored

}

Итоговая конфигурация Клиента

при копировании проверяйте правильность указанных IP адресов

FileDaemon {

# Имя клиента

Name = dir-fd

# какой порт слушать (используется значение по умолчанию)

FDport = 9102

# папка в которой лежат статус-файлы Клиента

WorkingDirectory = /var/lib/bacula

# pid-файл демона Клиента

Pid Directory = /run/bacula

# Максимальное количество выполняемых заданий.

# (не рекомендуется одновременно запускать более одного задания)

Maximum Concurrent Jobs = 1

# возможность расширений FD,

# расширения оформляются в виде разделяемых библиотек (имя-fd.so) и помещаются в указанный каталог

Plugin Directory = /usr/lib/bacula

# fqdn имя или IP-адрес Клиента

FDAddress = 192.168.244.90

}


Director {

# Имя Директора который может подключаться к этому Клиенту

Name = dir-dir

# Пароль подключения к этому Клиенту

Password = "clientpass"

}


Messages {

Name = Standard

director = dir-dir = all, !skipped, !restored

}

Присвоение необходимых прав созданному файлу и назначение ему владельца (chmod and chown on file)

Далее нам необходимо присвоить необходимые права созданным файлам и папкам и назначить им владельца командами:

sudo chmod 644 /etc/bacula/bacula-fd.conf

sudo chown root:bacula /etc/bacula/bacula-fd.conf

Перезапуск сервиса Клиента

Необходимо перезапустить сервис командой:

sudo systemctl restart bacula-fd.service
Если все настроено правильно, то никаких сообщений об ошибках мы не увидим.

Если что то пошло не так - смотрим логи Bacula и системы, разбираемся с правами доступа в папки и к файлам самой Bacula на Клиенте.

Так же для понимания что не так хорошо помогает результат вывода команды:

sudo journalctl -xe

Настройка закончена, если все прошло без ошибок, то можно и НУЖНО(!!!) сделать снимок ВМ Клиента.