Bacula 7 — новые функции

Новые функции в версии Bacula 7.4.3

Функция RunScripts

В Директоре реализовано две новых укороченных команды RunScript:

Job {
  ...
  ConsoleRunBeforeJob = "console-command"
  ...
}
Job {
  ...
  ConsoleRunAfterJob = "console-command"
  ...
}

Как и в случае с другими командами RunScript, вы можете создавать множество копий ConsoleRunBeforeJob или ConsoleRunAfterJob в одном и том же определении ресурса задачи.

Пожалуйста, примите во внимание, что допустимо использование не всех консольных команд. Если вы запускаете консольные команды, которые требуют ответа, результаты не будут определены (то есть команда, возможно, не будет исполнена).

Новые функции в версии Bacula 7.4.0

Проверка данных тома

Теперь можно сконфигурировать скрипт проверки задачи Verify Job с помощью параметра level=Data, который позволяет повторно считывать все записи из задачи и опционально проверять размер и контрольную сумму всех файлов.

Теперь можно сконфигурировать скрипт проверки задачи Verify Job с помощью параметра level=Data, который позволяет повторно считывать все записи из задачи и опционально проверять размер и контрольную сумму всех файлов.

# Определение проверки задачи
Job {
  Name = VerifyData
  Level = Data
  Client = 127.0.0.1-fd     # Использовать локальный file daemon
  FileSet = Dummy           # Будет определен во время выполнения задачи
  Storage = File            # Должен быть правым
  Messages = Standard
  Pool = Default
}

# Backup Job definition
Job {
  Name = MyBackupJob
  Type = Backup
  Client = windows1
  FileSet = MyFileSet
  Pool = 1Month
  Storage = File
}

FileSet {
  Name = MyFileSet
  Include {
    Options {
      Verify = s5
      Signature = MD5
    }
  File = /
}

Чтобы запустить скрипт проверки задачи, можно использовать параметр ‘jobid’ команды ‘run’.

*run job=VerifyData jobid=10
Run Verify Job
JobName:     VerifyData
Level:       Data
Client:      127.0.0.1-fd
FileSet:     Dummy
Pool:        Default (From Job resource)
Storage:     File (From Job resource)
Verify Job:  MyBackupJob.2015-11-11_09.41.55_03
Verify List: /opt/bacula/working/working/VerifyVol.bsr
When:        2015-11-11 09:47:38
Priority:    10
OK to run? (yes/mod/no): yes
Job queued. JobId=14

...

11-Nov 09:46 my-dir JobId 13: Bacula 7.4.0 (13Nov15):
  Build OS:               x86_64-unknown-linux-gnu archlinux
  JobId:                  14
  Job:                    VerifyData.2015-11-11_09.46.29_03
  FileSet:                MyFileSet
  Verify Level:           Data
  Client:                 127.0.0.1-fd
  Verify JobId:           10
  Verify Job:q
  Start time:             11-Nov-2015 09:46:31
  End time:               11-Nov-2015 09:46:32
  Files Expected:         1,116
  Files Examined:         1,116
  Non-fatal FD errors:    0
  SD Errors:              0
  FD termination status:  Verify differences
  SD termination status:  OK
  Termination:            Verify Differences

Выполнение данного скрипта проверки данных Verify Data требует указания правильного ресурса хранения в скрипте проверки задачи Verify job. Ресурс хранения может быть изменен с помощью командной строки в консоли или с помощью меню.

Параметры консольной команды ‘list jobs’

Консольная команда list jobs теперь допускает использование новых параметров:

  • joberrors Отображение задач с ошибками
  • jobstatus=T Отображение задач с указанным кодом состояния
  • client=cli Отображает задачи для указанного клиента
  • order=asc/desc Изменяет выходной формат списка задач. Задачи сортируются по времени запуска и JobId, при сортировки можно использовать значения по возрастанию (asc) или убыванию (desc) (по умолчанию).

Незначительные улучшения

Новая консольная команда ‘Tee All’

Команда ‘@tall’ позволяет регистрировать все входные/выходные данные из сеанса консоли.

*@tall /tmp/log
*st dir
...

Поддержка системы шифрования данных (EFS) Windows

Утилита Bacula Enterprise Windows File Daemon для версии 7.4.0 теперь поддерживает файлы и директории, которые шифруются системой шифрования данных Windows.

SSL подключение к MySQL

В файле bacula-dir.conf находится пять новых директив, которые можно использовать для шифрования передачи данных между Bacula и MySQL в целях обеспечения дополнительной безопасности.

dbsslkey

принимает строковую переменную, которая указывает имя файла SSL ключа.

dbsslcert

принимает строковую переменную, которая указывает имя файла SSL сертификата.

dbsslca

принимает строковую переменную, которая указывает имя файла SSL CA сертификата.

dbsslcipher

принимает строковую переменную, которая указывает алгоритм шифрования данных.

Директива Max Virtual Full Interval

Это новая директива ресурса задач, которая задает максимальный интервал времени в секундах между выполнением виртуальных полных задач. Директива схожа с директивой Max Full Interval, однако, применяется к виртуальным полным задачам, а не к полным задачам.

Вывод нового списка томов

Команды list и llist были изменены таким образом, чтобы при перечислении томов выводилась псевдо-область expiresin. Эта область содержит время в секундах, через которое истечет период хранения. Если период хранения уже истек, значение будет равно нулю. Любое ненулевое значение означает, что период хранения по-прежнему действует.

Пример со множеством столбцов, укороченных в целях наглядного представления данных, представлен ниже:

*list volumes
Pool: Default
*list volumes
Pool: Default
+----+---------------+-----------+---------+-------------+-----------+
| id | volumename    | volstatus | enabled | volbytes    | expiresin |
+----+---------------+-----------+---------+-------------+-----------+
|  1 | TestVolume001 | Full      |       1 | 249,940,696 |         0 |
|  2 | TestVolume002 | Full      |       1 | 249,961,704 |         1 |
|  3 | TestVolume003 | Full      |       1 | 249,961,704 |         2 |
|  4 | TestVolume004 | Append    |       1 | 127,367,896 |         3 |
+----+---------------+-----------+---------+-------------+-----------+