Попытка сделать то, что мне кажется очень простым исключением из набора файлов.
В основном я хочу включить / root и / home и исключить все каталоги с именами .cache и Downloads.
FileSet {
Name = Exclusion_example
Include {
Options {
Signature = SHA1
}
File = /root
File = /home
}
Exclude {
File = Downloads
File = .cache
}
}
Я попытался переместить их в раздел «Параметры» и использовать Exclude = yes. Я пробовал использовать WildDir / WildFile, но это кажется неправильным, когда я использую команду 'оценка': эти файлы все еще перечислены.
Кто-нибудь может указать здесь точный синтаксис? Я просмотрел документы BareOS и Bacula, и ни один из них, похоже, не объясняет мне, что я делаю неправильно.
После долгой возни я получил работу со следующим:
FileSet {
Name = "MyFileSet"
Include {
Options {
signature = MD5
Exclude = yes
WildDir = "*/\.cache"
WildDir = "*/Downloads"
}
File = /root
File = /home
}
}
Раздел «Включить» добавляет файлы / root и / home, а раздел «Параметры» исключает те, которые вам не нужны. Раздел параметров позволяет использовать WildFile и WildDir, а раздел Include и Exclude - нет. Необходимо избежать точки. Обратите внимание, что использование «Загрузки» вместо «* / Downloads» не даст желаемого результата.
Вы можете добавить больше разделов «Включить», но логика, в которой они применяются вместе с разделами «Исключить», не совсем прозрачна.
Всегда используйте команду «оценка», чтобы увидеть, какие файлы будут скопированы, и посмотрите, работает ли исключение так, как вы ожидаете.
Я предлагаю полностью прочитать эти 2 раздела из документации (они дадут вам лучшее представление о механизме):
https://www.bacula.org/5.0.x-manuals/en/main/main/Configuring_Director.html#SECTION001870000000000000000 https://www.bacula.org/5.0.x-manuals/en /main/main/Configuring_Director.html#SECTION001880000000000000000
Надеюсь, это поможет кому-то другому.