我想让 rsnapshot 在 Linux 机器上备份本地磁盘上的 SVN 存储库。我知道我不能只从文件系统中备份它,所以在每个快照之前,我都会使用“svnadmin hotcopy”进行复制。但是,每次我进行热复制时,生成的文件都具有当前时间戳,而不是与原始文件相同的时间戳。这意味着我失去了执行 rsnapshot 提供的写时复制式磁盘空间节省的能力。
我想到的一个解决方案是让脚本查看热拷贝 ($DEST) 中的所有文件,并为每个文件 x 设置基于文件 $SOURCE/x 的时间戳。我不知道是否有办法让 rsync 在 Linux 上执行此操作(我知道您可以在 Windows 上的 Robocopy 中执行此操作 :) 我确信可以通过 find 和 touch 完成此操作。
欢迎提出如何执行此操作或其他解决方案的建议。我宁愿不使用增量 svn 转储,因为我希望每个时间点快照当时都是存储库的完整副本。