我不确定标题是否真的正确。我的 rsnapshot.conf 中有一行
backup [email protected]:/mnt/rsnapshot/ srv01/
所以 rsnapshot 创建一个 directorsRSNAPSHOT_ROOT/daily.0/srv01/mnt/rsnapshot
并将备份文件放在那里。对我来说,这/mnt/rsnapshot
部分是不必要的;我宁愿将我的备份文件直接保存在RSNAPSHOT_ROOT/daily.0/srv01/
. 有什么办法可以做到这一点?
rsnapshot
使用 的--relative
标志rsync
来保留路径名信息。在大多数情况下,您可能确实希望保留(至少部分)该信息,尤其是在备份本地目录时。但是,在您的情况下,您真的不需要保留前导路径前缀。使用相当新的版本(v.2.6.7+),您可以通过在所需的切点插入 a
rsync
来显式控制路径名前缀的保存部分。不会有效地更改路径名,但它确实表明您只想保留. 由于您想切断整个路径名,您只需将 附加到源路径的末尾,如下所示:--relative
./
./
rsync
--relative
./
./
编辑
好吧,看起来这个
./
技巧在这种情况下不起作用,因为rsnapshot
去掉了尾随的/
. 相反,您应该能够--relative
在每个备份点的基础上禁用该选项,方法是在您的backup
行中添加第四列,如下所示:+rsync_long_args
告诉rsnapshot
附加到其现有选项rsync_long_args
,仅适用于当前备份点。通过附加--no-relative
到rsync_long_args
,您可以实现关闭 的预期效果--relative
。史蒂文的第一个使用建议
./
确实适用于 rsnapshot,你只需要把它放两次:Rsnapshot 将去掉最后一个斜杠,但第一个点适用于 rsync。
这种行为实际上是由 rsync 的
--relative
标志控制的。引用rsync 手册:因此,在您
rsnapshot.conf
找到以rsync_long_args
. 默认情况下,--delete --numeric-ids --relative --delete-excluded
应该存在。删除该--relative
选项应该会导致预期的结果。