排除 rsnapshot 中包含 docker 的文件夹(docker/volumes 除外)

排除 rsnapshot 中包含 docker 的文件夹(docker/volumes 除外)

docker/我配置了 rsnapshot,以排除文件路径中包含该字符串的所有文件夹rsnapshot_exclude

docker/*

但现在我想要包括一个特定的文件夹:

/var/lib/docker/volumes/

我如何在 中定义它rsnapshot.conf

也许可以这样定义?

docker/(?!volumes))

答案1

rsnapshot使用排除规则并将其传递给它时,您可以使用“ ”(包含)规则rsync专门包含目录/文件。+

第一个适用的规则将被执行,因此只需添加一行

+ /var/lib/docker/volumes/

高于你的其他规则。

来自 rsync 文档:

过滤规则

...

当构建要传输的文件/目录列表时,rsync 会依次根据包含/排除模式列表检查要传输的每个名称,并执行第一个匹配模式:如果它是排除模式,则该文件是跳过;如果它是包含模式,则不会跳过该文件名;如果没有找到匹配的模式,则不会跳过文件名。

相关内容