尝试在文件集中执行在我看来非常简单的排除操作。
基本上我想包括 /root 和 /home 并排除所有名为 .cache 和下载的目录。
FileSet {
Name = Exclusion_example
Include {
Options {
Signature = SHA1
}
File = /root
File = /home
}
Exclude {
File = Downloads
File = .cache
}
}
我已经尝试将这些移动到选项部分并使用排除=是。我已经尝试过 WildDir/WildFile,但是当我使用“估计”命令时它似乎不正确:这些文件仍然列出。
有人可以在这里给出确切的语法吗?我查看了 BareOS 和 Bacula 文档,但似乎没有一个可以解释我做错了什么。
经过大量的摆弄,我得到了它与下面的工作:
Include 部分添加 /root 和 /home 文件,Options 部分排除您不想要的文件。options 部分允许 WildFile 和 WildDir,Include 和 Exclude 部分不允许。必须转义一个点。请注意,使用 'Downloads' 而不是 '*/Downloads' 不会给您想要的结果。
您可以添加更多包含部分,但将这些部分与排除部分一起应用的逻辑并不是真正透明的。
始终使用“估计”命令查看将备份哪些文件,并查看排除是否按预期工作。
我建议完整阅读文档中的这两个部分(它们会让您更好地了解机制):
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
希望这对其他人有帮助。