Установка пакетов
Установка пакетов для работы клиента может быть выполнена командой:
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)
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
}
Итоговая конфигурация Клиента
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