Поиск по сайту:

Как установить сервер Bacula на CentOS 7


Введение

Bacula — это решение для сетевого резервного копирования с открытым исходным кодом, которое позволяет создавать резервные копии и выполнять восстановление данных ваших компьютерных систем. Он очень гибкий и надежный, что делает его несколько громоздким в настройке, но подходящим для резервного копирования во многих ситуациях. Система резервного копирования является важным компонентом большинства серверных инфраструктур, поскольку восстановление после потери данных часто является важной частью планов аварийного восстановления.

В этом руководстве мы покажем вам, как установить и настроить серверные компоненты Bacula на сервере CentOS 7. Мы настроим Bacula для выполнения еженедельного задания по созданию локальной резервной копии (т. е. резервной копии собственного хоста). Это само по себе не особенно привлекательное использование Bacula, но оно предоставит вам хорошую отправную точку для создания резервных копий других ваших серверов, то есть клиентов резервного копирования. В следующем руководстве из этой серии будет рассказано о создании резервных копий других удаленных серверов путем установки и настройки клиента Bacula, а также настройки сервера Bacula.

Если вы предпочитаете вместо этого использовать Ubuntu 14.04, перейдите по этой ссылке: Как установить Bacula Server на Ubuntu 14.04.

Предпосылки

У вас должен быть доступ суперпользователя (sudo) на сервере CentOS 7. Кроме того, серверу потребуется достаточно места на диске для всех резервных копий, которые вы планируете хранить в любой момент времени.

Если вы используете DigitalOcean, вам следует включить частную сеть на вашем сервере Bacula и на всех ваших клиентских серверах, которые находятся в одном регионе центра обработки данных. Это позволит вашим серверам использовать частную сеть при резервном копировании, что снизит нагрузку на сеть.

Мы настроим Bacula для использования частного полного доменного имени наших серверов, например. bacula.private.example.com. Если у вас нет настройки DNS, вместо этого используйте соответствующие IP-адреса. Если у вас не включена частная сеть, замените всю информацию о сетевых подключениях в этом руководстве сетевыми адресами, доступными для рассматриваемых серверов (например, общедоступные IP-адреса или VPN-туннели).

Последнее предположение заключается в том, что SELinux отключен или вы можете самостоятельно устранять проблемы, связанные с SELinux.

Давайте начнем с обзора компонентов Bacula.

Обзор компонентов Bacula

Хотя Bacula состоит из нескольких программных компонентов, она следует модели резервного копирования сервер-клиент; чтобы упростить обсуждение, мы сосредоточимся больше на сервере резервного копирования и клиентах резервного копирования, чем на отдельных компонентах Bacula. Тем не менее, важно иметь поверхностное представление о различных компонентах Bacula, поэтому мы рассмотрим их сейчас.

Сервер Bacula, который мы также будем называть «резервным сервером», состоит из следующих компонентов:

  • Bacula Director (DIR): программное обеспечение, управляющее операциями резервного копирования и восстановления, выполняемыми демонами File and Storage.
  • Storage Daemon (SD): программное обеспечение, которое выполняет чтение и запись на устройствах хранения, используемых для резервного копирования.
  • Каталог: службы, поддерживающие базу данных резервных копий файлов. База данных хранится в базе данных SQL, например MySQL или PostgreSQL.
  • Консоль Bacula: интерфейс командной строки, который позволяет администратору резервного копирования взаимодействовать с Bacula Director и управлять им.

Note: The Bacula server components don't need to run on the same server, but they all work together to provide the backup server functionality.

Клиент Bacula, то есть сервер, для которого будет выполняться резервное копирование, запускает компонент File Daemon (FD). Файловый демон — это программное обеспечение, которое предоставляет серверу Bacula (в частности, директору) доступ к данным, для которых будет выполняться резервное копирование. Мы также будем называть эти серверы «клиентами резервного копирования» или «клиентами».

Как мы отмечали во введении, мы настроим сервер резервного копирования для создания резервной копии собственной файловой системы. Это означает, что сервер резервного копирования также будет клиентом резервного копирования и будет запускать компонент File Daemon.

Приступим к установке.

Установите Bacula и MySQL

Bacula использует базу данных SQL, такую как MySQL или PostreSQL, для управления своим каталогом резервных копий. В этом руководстве мы будем использовать MariaDB, замену MySQL.

Установите пакеты Bacula и MariaDB Server с помощью yum:

  1. sudo yum install -y bacula-director bacula-storage bacula-console bacula-client mariadb-server

Когда установка будет завершена, нам нужно запустить MySQL с помощью следующей команды:

  1. sudo systemctl start mariadb

Теперь, когда MySQL (MariaDB) установлен и запущен, давайте создадим пользователя и таблицы базы данных Bacula с помощью следующих скриптов:

  1. /usr/libexec/bacula/grant_mysql_privileges
  2. /usr/libexec/bacula/create_mysql_database -u root
  3. /usr/libexec/bacula/make_mysql_tables -u bacula

Затем мы хотим запустить простой сценарий безопасности, который удалит некоторые опасные значения по умолчанию и немного заблокирует доступ к нашей системе баз данных. Запустите интерактивный скрипт, выполнив:

  1. sudo mysql_secure_installation

Приглашение попросит вас ввести текущий пароль root. Поскольку вы только что установили MySQL, у вас, скорее всего, его не будет, поэтому оставьте его пустым, нажав Enter. Затем подсказка спросит вас, хотите ли вы установить пароль root. Нажмите Enter и установите пароль. Для остальных вопросов вы должны просто нажимать клавишу Enter в каждом запросе, чтобы принять значения по умолчанию. При этом будут удалены некоторые примеры пользователей и баз данных, отключен удаленный вход в систему root и загружены эти новые правила, чтобы MySQL немедленно учитывал сделанные нами изменения.

Теперь нам нужно установить пароль для пользователя базы данных Bacula.

Войдите в консоль MySQL как пользователь root MySQL:

  1. mysql -u root -p

Введите корневой пароль MySQL, который вы только что установили, в командной строке.

Теперь установите пароль для пользователя базы данных Bacula. Используйте эту команду, но замените выделенный \bacula_db_password надежным паролем:

  1. UPDATE mysql.user SET Password=PASSWORD('bacula_db_password') WHERE User='bacula';
  2. FLUSH PRIVILEGES;

Когда вы закончите здесь, выйдите из командной строки MySQL:

  1. exit

Включите запуск MariaDB при загрузке. Для этого используйте следующую команду:

  1. sudo systemctl enable mariadb

Настройте Bacula на использование библиотеки MySQL

По умолчанию Bacula использует библиотеку PostgreSQL. Поскольку мы используем MySQL, нам нужно настроить его на использование библиотеки MySQL.

Запустите эту команду:

  1. sudo alternatives --config libbaccats.so

Вы увидите следующую подсказку. Введите 1 (MySQL):

Output
There are 3 programs which provide 'libbaccats.so'. Selection Command ----------------------------------------------- 1 /usr/lib64/libbaccats-mysql.so 2 /usr/lib64/libbaccats-sqlite3.so *+ 3 /usr/lib64/libbaccats-postgresql.so Enter to keep the current selection[+], or type selection number: 1

Теперь компоненты сервера (и клиента) Bacula установлены. Давайте создадим каталоги резервного копирования и восстановления.

Создание резервных копий и каталогов восстановления

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

Давайте создадим новые каталоги для обеих этих целей:

  1. sudo mkdir -p /bacula/backup /bacula/restore

Нам нужно изменить права доступа к файлам, чтобы только процесс bacula (и суперпользователь) мог получить доступ к этим местам:

  1. sudo chown -R bacula:bacula /bacula
  2. sudo chmod -R 700 /bacula

Теперь мы готовы настроить Bacula Director.

Настройка директора Bacula

Bacula имеет несколько компонентов, которые необходимо настроить независимо друг от друга для правильной работы. Все файлы конфигурации можно найти в каталоге /etc/bacula.

Начнем с Bacula Director.

Откройте файл конфигурации Bacula Director в вашем любимом текстовом редакторе. Мы будем использовать vi:

  1. sudo vi /etc/bacula/bacula-dir.conf

Настройка ресурса директора

Найдите ресурс Director и настройте его для прослушивания 127.0.0.1 (localhost), добавив показанную здесь строку DirAddress:

Director {                            # define myself
  Name = bacula-dir
  DIRport = 9101                # where we listen for UA connections
  QueryFile = "/etc/bacula/query.sql"
  WorkingDirectory = "/var/spool/bacula"
  PidDirectory = "/var/run"
  Maximum Concurrent Jobs = 1
  Password = "@@DIR_PASSWORD@@"         # Console password
  Messages = Daemon
  DirAddress = 127.0.0.1
}

Теперь перейдите к остальной части файла.

Настройка локальных заданий

Задание Bacula используется для выполнения действий по резервному копированию и восстановлению. Ресурсы заданий определяют детали того, что будет выполнять конкретное задание, включая, среди прочего, имя клиента, набор файлов для резервного копирования или восстановления.

Здесь мы настроим задания, которые будут использоваться для резервного копирования локальной файловой системы.

В конфигурации Director найдите ресурс Job с именем \BackupClient1 (ищите \BackupClient1). Измените значение Name на \BackupLocalFiles, чтобы оно выглядело так:

Job {
  Name = "BackupLocalFiles"
  JobDefs = "DefaultJob"
}

Затем найдите ресурс Job с именем \RestoreFiles (ищите \RestoreFiles). В этом задании вы хотите изменить две вещи: обновить значение Name на \RestoreLocalFiles и значение Where на \/bacula/restore. Это должно выглядеть так:

Job {
  Name = "RestoreLocalFiles"
  Type = Restore
  Client=BackupServer-fd
  FileSet="Full Set"
  Storage = File
  Pool = Default
  Messages = Standard
  Where = /bacula/restore
}

Это настраивает задание RestoreLocalFiles для восстановления файлов в /bacula/restore, каталог, который мы создали ранее.

Настроить набор файлов

Bacula FileSet определяет набор файлов или каталогов для включения или исключения файлов из выборки для резервного копирования и используется заданиями.

Найдите ресурс FileSet с именем «Полный набор» (он находится под комментарием «# Список файлов для резервного копирования»). Здесь мы внесем три изменения: (1) добавим возможность использовать gzip для сжатия наших резервных копий, (2) изменим включаемый файл с /usr/sbin на /, и (3) добавьте File=/bacula в раздел «Исключить». После удаления комментариев это должно выглядеть так:

FileSet {
  Name = "Full Set"
  Include {
    Options {
      signature = MD5
      compression = GZIP
    }    
File = /
}
  Exclude {
    File = /var/lib/bacula
    File = /proc
    File = /tmp
    File = /.journal
    File = /.fsck
    File = /bacula
  }
}

Давайте рассмотрим изменения, которые мы внесли в набор файлов «Полный набор». Во-первых, мы включили сжатие gzip при создании резервного архива. Во-вторых, мы включили /, т. е. корневой раздел, который В-третьих, мы исключаем /bacula, потому что не хотим создавать избыточные резервные копии наших резервных копий и восстановленных файлов Bacula.

Note: If you have partitions that are mounted within /, and you want to include those in the FileSet, you will need to include additional File records for each of them.

Имейте в виду, что если вы всегда используете широкие наборы файлов, такие как «Полный набор», в своих заданиях резервного копирования, для ваших резервных копий потребуется больше места на диске, чем если бы ваши резервные копии были более конкретными. Например, набор файлов, который включает только вашу настроенную конфигурацию файлов и баз данных может быть достаточно для ваших нужд, если у вас есть четкий план восстановления, подробно описывающий установку необходимых пакетов программного обеспечения и размещение восстановленных файлов в нужных местах, при этом используя только часть дискового пространства для архивов резервных копий.

Настройка подключения демона хранилища

В файле конфигурации Bacula Director ресурс Storage определяет Storage Daemon, к которому должен подключаться Director. Через мгновение мы настроим самого Storage Daemon.

Найдите ресурс Storage и замените значение адреса localhost частным полным доменным именем (или частным IP-адресом) вашего сервера резервного копирования. Должно получиться так (замените выделенное слово):

Storage {
  Name = File
# Do not use "localhost" here
  Address = backup_server_private_FQDN                # N.B. Use a fully qualified name here
  SDPort = 9103
  Password = "@@SD_PASSWORD@@"
  Device = FileStorage
  Media Type = File
}

Это необходимо, потому что мы собираемся настроить Storage Daemon для прослушивания интерфейса частной сети, чтобы к нему могли подключаться удаленные клиенты.

Настройка подключения к каталогу

В файле конфигурации Bacula Director ресурс Catalog определяет, где база данных, которую директор должен использовать и к которой должен подключаться.

Найдите ресурс каталога под названием \MyCatalog (он находится под комментарием \Общая служба каталогов) и обновите значение dbpassword, чтобы оно совпадало с паролем, установленным для bacula. Пользователь MySQL:

# Generic catalog service
Catalog {
  Name = MyCatalog
# Uncomment the following line if you want the dbi driver
# dbdriver = "dbi:postgresql"; dbaddress = 127.0.0.1; dbport =
  dbname = "bacula"; dbuser = "bacula"; dbpassword = "bacula_db_password"
}

Это позволит Bacula Director подключиться к базе данных MySQL.

Настроить пул

Ресурс пула определяет набор хранилищ, используемых Bacula для записи резервных копий. Мы будем использовать файлы в качестве томов для хранения и просто обновим метку, чтобы наши локальные резервные копии были правильно помечены.

Найдите ресурс пула с именем \Файл (он находится под комментарием \# определение пула файлов) и добавьте строку, указывающую формат метки. Когда вы закончите, это должно выглядеть так:

# File Pool definition
Pool {
  Name = File
  Pool Type = Backup
  Label Format = Local-
  Recycle = yes                       # Bacula can automatically recycle Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
  Maximum Volume Bytes = 50G          # Limit Volume size to something reasonable
  Maximum Volumes = 100               # Limit number of Volumes in Pool
}

Сохранить и выйти. Наконец-то вы закончили настройку Bacula Director.

Проверьте конфигурацию директора:

Давайте проверим, что в вашем файле конфигурации Director нет синтаксических ошибок:

  1. sudo bacula-dir -tc /etc/bacula/bacula-dir.conf

Если сообщений об ошибках нет, ваш файл bacula-dir.conf не содержит синтаксических ошибок.

Далее мы настроим Storage Daemon.

Настройка демона хранилища

Наш сервер Bacula почти настроен, но нам еще нужно настроить Storage Daemon, чтобы Bacula знала, где хранить резервные копии.

Откройте конфигурацию SD в вашем любимом текстовом редакторе. Мы будем использовать vi:

  1. sudo vi /etc/bacula/bacula-sd.conf

Настроить ресурс хранилища

Найдите ресурс хранилища. Это определяет, где процесс SD будет прослушивать соединения. Добавьте параметр SDAddress и назначьте его частному полному доменному имени (или частному IP-адресу) вашего сервера резервного копирования:

Storage {                             # definition of myself
  Name = BackupServer-sd
  SDPort = 9103                  # Director's port
  WorkingDirectory = "/var/lib/bacula"
  Pid Directory = "/var/run/bacula"
  Maximum Concurrent Jobs = 20
  SDAddress = backup_server_private_FQDN
}

Настройка устройства хранения

Затем найдите ресурс устройства с именем \FileStorage (ищите \FileStorage) и обновите значение Archive Device, чтобы оно соответствовало каталогу резервных копий:

Device {
  Name = FileStorage
  Media Type = File
  Archive Device = /bacula/backup 
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
}

Сохранить и выйти.

Проверка конфигурации демона хранилища

Давайте проверим, что в вашем файле конфигурации Storage Daemon нет синтаксических ошибок:

  1. sudo bacula-sd -tc /etc/bacula/bacula-sd.conf

Если сообщений об ошибках нет, ваш файл bacula-sd.conf не содержит синтаксических ошибок.

Мы завершили настройку Bacula. Мы готовы перезапустить компоненты сервера Bacula.

Установка паролей компонентов Bacula

Каждый компонент Bacula, такой как Director, SD и FD, имеет пароли, которые используются для межкомпонентной аутентификации — вы, вероятно, заметили заполнители при просмотре файлов конфигурации. Эти пароли можно установить вручную, но, поскольку вам на самом деле не нужно знать эти пароли, мы будем запускать команды для генерации случайных паролей и вставки их в различные файлы конфигурации Bacula.

Эти команды генерируют и устанавливают пароль директора. bconsole подключается к директору, поэтому ему тоже нужен пароль:

  1. DIR_PASSWORD=`date +%s | sha256sum | base64 | head -c 33`
  2. sudo sed -i "s/@@DIR_PASSWORD@@/${DIR_PASSWORD}/" /etc/bacula/bacula-dir.conf
  3. sudo sed -i "s/@@DIR_PASSWORD@@/${DIR_PASSWORD}/" /etc/bacula/bconsole.conf

Эти команды генерируют и устанавливают пароль Storage Daemon. Директор подключается к SD, поэтому ему тоже нужен пароль:

  1. SD_PASSWORD=`date +%s | sha256sum | base64 | head -c 33`
  2. sudo sed -i "s/@@SD_PASSWORD@@/${SD_PASSWORD}/" /etc/bacula/bacula-sd.conf
  3. sudo sed -i "s/@@SD_PASSWORD@@/${SD_PASSWORD}/" /etc/bacula/bacula-dir.conf

Эти команды генерируют и устанавливают пароль локального файлового демона (клиентское программное обеспечение Bacula). Директор подключается к этому ФД, поэтому ему тоже нужен пароль:

  1. FD_PASSWORD=`date +%s | sha256sum | base64 | head -c 33`
  2. sudo sed -i "s/@@FD_PASSWORD@@/${FD_PASSWORD}/" /etc/bacula/bacula-dir.conf
  3. sudo sed -i "s/@@FD_PASSWORD@@/${FD_PASSWORD}/" /etc/bacula/bacula-fd.conf

Теперь мы готовы запустить наши компоненты Bacula!

Запустить компоненты Bacula

Запустите Bacula Director, Storage Daemon и локальный File Daemon с помощью следующих команд:

  1. sudo systemctl start bacula-dir
  2. sudo systemctl start bacula-sd
  3. sudo systemctl start bacula-fd

Если все они запустились правильно, запустите эти команды, чтобы они запускались автоматически при загрузке:

  1. sudo systemctl enable bacula-dir
  2. sudo systemctl enable bacula-sd
  3. sudo systemctl enable bacula-fd

Давайте проверим, работает ли Bacula, запустив задание резервного копирования.

Тестовое задание резервного копирования

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

Теперь войдите в консоль с помощью этой команды:

  1. sudo bconsole

Это приведет вас к приглашению консоли Bacula, обозначенному приглашением *.

Создать ярлык

Начните с ввода команды label:

  1. label

Вам будет предложено ввести имя тома. Введите любое имя, которое вы хотите:

Enter new Volume name:
MyVolume

Затем выберите пул, который следует использовать для резервного копирования. Мы будем использовать пул «Файл», который мы настроили ранее, введя «2»:

Select the Pool (1-3):
2

Запуск задания резервного копирования вручную

Теперь Bacula знает, как мы хотим записать данные для нашей резервной копии. Теперь мы можем запустить нашу резервную копию, чтобы проверить, правильно ли она работает:

  1. run

Вам будет предложено выбрать задание для запуска. Мы хотим запустить задание «BackupLocalFiles», поэтому введите «1» в командной строке:

Select Job resource (1-3):
1

В запросе подтверждения «Выполнить задание резервного копирования» проверьте детали, затем введите «да», чтобы запустить задание:

  1. yes

Проверить сообщения и статус

После запуска задания Bacula сообщит вам, что у вас есть сообщения. Сообщения выводятся при выполнении заданий.

Проверьте сообщения, набрав:

  1. messages

В сообщениях должно быть указано «Не найдена запись предыдущего задания полного резервного копирования» и что задание резервного копирования запущено. Если есть какие-либо ошибки, значит что-то не так, и они должны дать вам подсказку, почему задание не запустилось.

Еще один способ увидеть статус задания — проверить статус директора. Для этого введите эту команду в командной строке bconsole:

  1. status director

Если все работает правильно, вы должны увидеть, что ваша работа выполняется. Что-то вроде этого:

Output — status director (Running Jobs)
Running Jobs: Console connected at 09-Apr-15 12:16 JobId Level Name Status ====================================================================== 3 Full BackupLocalFiles.2015-04-09_12.31.41_06 is running ====

Когда ваша работа будет завершена, она переместится в раздел «Завершенные работы» отчета о состоянии, например:

Output — status director (Terminated Jobs)
Terminated Jobs: JobId Level Files Bytes Status Finished Name ==================================================================== 3 Full 161,124 877.5 M OK 09-Apr-15 12:34 BackupLocalFiles

Статус «ОК» означает, что задание резервного копирования прошло без проблем. Поздравляем! У вас есть резервная копия «Полного набора» вашего сервера Bacula.

Следующим шагом является проверка задания восстановления.

Тестовое задание восстановления

Теперь, когда резервная копия создана, важно убедиться, что ее можно правильно восстановить. Команда restore позволит нам восстановить файлы, для которых были созданы резервные копии.

Выполнить восстановление всего задания

Чтобы продемонстрировать, мы восстановим все файлы из нашей последней резервной копии:

  1. restore all

Появится меню выбора с множеством различных опций, которые используются для определения, из какого набора резервных копий следует восстанавливаться. Поскольку у нас есть только одна резервная копия, давайте «Выберем самую последнюю резервную копию» — выберите вариант 5:

Select item (1-13):
5

Поскольку есть только один клиент, сервер Bacula, он будет выбран автоматически.

Следующее приглашение спросит, какой набор файлов вы хотите использовать. Выберите «Полный набор», которых должно быть 2:

Select FileSet resource (1-2):
2

Это приведет вас к виртуальному файловому дереву со всей структурой каталогов, которую вы зарезервировали. Этот похожий на оболочку интерфейс позволяет простым командам помечать и снимать пометки с файлов, подлежащих восстановлению.

Поскольку мы указали, что хотим «восстановить все», каждый резервный файл уже помечен для восстановления. Помеченные файлы обозначаются начальным символом *.

Если вы хотите уточнить свой выбор, вы можете перемещаться по файлам и перечислять их с помощью команд \ls и \cd, помечать файлы для восстановления с помощью \mark и снимать пометки с файлов с помощью \unmark. Полный список команд доступен при вводе \help в консоли.

Когда вы закончите выбор восстановления, введите:

  1. done

Подтвердите, что вы хотите запустить задание восстановления:

OK to run? (yes/mod/no):
yes

Проверить сообщения и статус

Как и в случае с заданиями резервного копирования, вы должны проверять сообщения и статус Director после запуска задания восстановления.

Проверьте сообщения, набрав:

  1. messages

Должно быть сообщение о том, что задание восстановления запущено или было прекращено со статусом «Восстановление в порядке». Если есть какие-либо ошибки, что-то не так, и они должны дать вам подсказку, почему задание не запустилось.

Опять же, проверка статуса директора — отличный способ увидеть состояние задания восстановления:

  1. status director

Когда вы закончите восстановление, введите exit, чтобы выйти из консоли Bacula:

  1. exit

Подтвердить восстановление

Чтобы убедиться, что задание восстановления действительно восстановило выбранные файлы, вы можете посмотреть в каталоге /bacula/restore (который был определен в задании \RestoreLocalFiles в конфигурации Director):

  1. sudo ls -la /bacula/restore

Вы должны увидеть восстановленные копии файлов в вашей корневой файловой системе, за исключением файлов и каталогов, перечисленных в разделе \Исключить задания \RestoreLocalFiles. Если вы пытались восстановить данные после потери, вы можете скопировать восстановленные файлы в соответствующие места.

Удалить восстановленные файлы

Вы можете удалить восстановленные файлы, чтобы освободить место на диске. Для этого используйте эту команду:

  1. sudo -u root bash -c "rm -rf /bacula/restore/*"

Обратите внимание, что вы должны запускать эту команду rm от имени пользователя root, так как многие из восстановленных файлов принадлежат пользователю root.

Заключение

Теперь у вас есть базовая установка Bacula, которая может создавать резервные копии и восстанавливать вашу локальную файловую систему. Следующим шагом является добавление других ваших серверов в качестве клиентов резервного копирования, чтобы вы могли восстановить их в случае потери данных.

В следующем руководстве показано, как добавить другие удаленные серверы в качестве клиентов Bacula: Как создать резервную копию сервера CentOS 7 с помощью Bacula.