Настройка резервного копирования на внешний HDD, используя Bareos, для Windows 10

Kate

Administrator
Команда форума

Описание задачи​

На стационарном ПК с ОС Windows 10 x64 на локальном диске DATA (D:) расположен каталог проекта "test". Необходимо организовать резервное копирование всех файлов вышеуказанного проекта на внешний HDD - BACKUP (E:), за исключением подкаталогов "target".
Разработка проекта ведётся в будние дни, поэтому копирование производить в автоматическом режиме по графику:
На компьютере на локальном диске C: установлена система Bareos версии 19.2.7 x64. Установка произведена "по умолчанию" (со всем соглашаемся и нажимаем "далее"), тип установки "Full SQLite":
92d98983c21d899114b64c946d2a9dac.png

Выполним нижеперечисленные действия по порядку.

Куда?​

Создадим ресурс "Устройство" ("Device") и опишем его в файле C:\ProgramData\Bareos\bareos-sd.d\device\RemoteStorage.conf:
Device {
# имя устройства, обязательное
Name = RemoteDevice
# тип данных, обязательное
Media Type = File
# где хранить тома, обязательное
Archive Device = E:/
# тома устройства именуются автоматически
LabelMedia = yes;
# поддерживает произвольный доступ
Random Access = yes;
# сканируется на наличие томов
AutomaticMount = yes;
# может ли быть отсоединено
RemovableMedia = yes;
}
Создадим ресурс "Хранилище" ("Storage"), соответствующий ресурсу Device, и опишем его в файле C:\ProgramData\Bareos\bareos-dir.d\storage\Remote.conf:
Storage {
# имя устройства, обязательное
Name = Remote
# имя или IP адрес, обязательное
Address = localhost
# пароль для доступа к Storage-сервису, обязательное
# ВЗЯТЬ ОТСЮДА C:\ProgramData\Bareos\bareos-sd.d\director\bareos-dir.conf
Password = "TFso/Fr6YDeuei/QYtg2bDLaS9dDkMgRvSPefKr88FnR"
# имя соответствующего ресурса Device, обязательное
Device = RemoteDevice
# тип данных, должен совпадать с типом данных соответствующего Device, обязательное
Media Type = File
}
Создадим ресурс "Пул" ("Pool") для полного копирования и опишем его в файле C:\ProgramData\Bareos\bareos-dir.d\pool\TestFull.conf:
Pool {
# имя пула, обязательное
Name = TestFull
# повторное использование устаревших томов
Recycle = yes
# усечение устаревших томов
AutoPrune = yes
# срок хранения данных в томах
Volume Retention = 365 days
# предельный размер тома
Maximum Volume Bytes = 50G
# предельное количество томов
Maximum Volumes = 100
# формат имени для томов "TestFull-<id-тома>"
Label Format = "TestFull-"
}
Создадим ресурс "Пул" ("Pool") для инкрементального копирования и опишем его в файле C:\ProgramData\Bareos\bareos-dir.d\pool\TestIncr.conf:
Pool {
# имя пула, обязательное
Name = TestIncr
# повторное использование устаревших томов
Recycle = yes
# усечение устаревших томов
AutoPrune = yes
# срок хранения данных в томах
Volume Retention = 30 days
# предельный размер тома
Maximum Volume Bytes = 1G
# предельное количество томов
Maximum Volumes = 100
# формат имени для томов "TestIncr-<id-тома>"
Label Format = "TestIncr-"
}

Что?​

Создадим ресурс "Набор файлов" ("FileSet") и опишем его в файле C:\ProgramData\Bareos\bareos-dir.d\fileset\TestFileSet.conf:
FileSet {
# имя набора файлов, обязательное
Name = "TestFileSet"
# что будем копировать
Include {
Options {
Signature = MD5 # хеширование, применяемое для файлов
WildDir = "*target" # шаблон для исключения каталога
Exclude = yes # исключить файлы по шаблону
}
File = "D:/test" # каталог, подлежащий копированию
}
}

Когда?​

Создадим ресурс "Расписание" ("Schedule") и опишем его в файле C:\ProgramData\Bareos\bareos-dir.d\schedule\TestSchedule.conf:
Schedule {
# имя расписания, обязательное
Name = "TestSchedule"
# тип копирования, используемый пул и время запуска
Run = Level=Full Pool=TestFull fri at 18:30
# тип копирования, используемый пул и время запуска
Run = Level=Incremental Pool=TestIncr mon-thu at 18:30
}

Кто? Как?​

Создадим ресурс "Задание" ("Job") и опишем его в файле C:\ProgramData\Bareos\bareos-dir.d\job\backupTest.conf:
Job {
# имя задания, обязательное
Name = "backupTest"
# имя используемой File-службы
Client = "bareos-fd"
# набор файлов
FileSet = "TestFileSet"
# имя используемого Message-ресурса, обязательное
Messages = "Standard"
# пул, обязательное
Pool = "TestFull"
# расписание
Schedule = "TestSchedule"
# устройство
Storage = "Remote"
# тип, обязательное
Type = "Backup"
# где хранить файл начальной загрузки
Write Bootstrap = "E:/%c.bsr"
}

Активация задания копирования​

Перезапустим службы Bareos, чтобы применить внесённые нами изменения:
  • Bareos Storage Service ("Bareos-sd");
  • Bareos Director Service ("Bareos-dir").
После этого наше задание "backupTest" активировано, проверим это. Зайдём в панель управления Bareos по адресу http://127.0.0.1:9100/ (логин: admin, пароль: admin). Перейдём в раздел "Расписание" ("Schedules") на вкладку "Статус планировщика" ("Status schedules") и убедимся, что наше задание присутствует в расписании.
df6f5e61373ef2b479ed861e3d17d177.png

Запуск копирования вручную​

Перейдем в раздел "Задания" ("Jobs") на вкладку "Запуск" ("Run"). В поле "Задание" ("Job") выберем наше задание "backupTest". В поле "Уровень" ("Level") выберем значение "Full" и запустим задание, нажав "Submit".
8980e22d05f50b4810632910c301ca01.png

При этом будет выполнено полное копирование. Для выполнения инкрементального копирования выберите в поле "Уровень" ("Level") значение "Incremental", в поле "Пул" ("Pool") - "TestIncr".
Ход выполнения любых заданий можно контролировать в разделе "Панель" ("Dashboard"):
0a05279d6c489da5f75af68b399ed284.png

Запуск восстановления данных​

Перейдем в раздел "Восстановление" ("Restore") на вкладку "Восстановить на клиент" ("Restore multiple files"). В поле "Клиент" ("Client") выберем значение "bareos-fd". В поле "Задания резервного копирования " ("Backup jobs") выберем желаемую точку восстановления. В поле "Объединить все наборы файлов клиента" ("Merge all clients filesets") выберем значение "Нет" ("No"). В поле "Папка восстановления на клиенте" ("Restore location on client") укажем куда восстановить данные ("D:/test_restore") и запустим восстановление, нажав "Restore".
d155389cffa5cd8982171006498d5c20.png



Источник статьи: https://habr.com/ru/post/549762/
 
Сверху