首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止rsync更改ctime

防止rsync更改ctime
EN

Server Fault用户
提问于 2014-10-09 12:52:27
回答 1查看 1.7K关注 0票数 0

我有以下情况:

我有一个目录中的文件,其中有一个进程正在更改一些文件并更新所有文件的ctime。我希望将所有文件重新同步到目标目录,但保留那些只更新它们的ctime的文件的ctime。

我尝试了以下方法(~/ source /test.txt是我的源文件,~/ target /test.txt是我的目标文件)。

代码语言:javascript
复制
chmod a+w source/test.txt (updates ctime but not mtime)
rsync -a -v -c --copy-dirlinks --delete --partial --inplace source/test.txt target

我期望那些在源目录中只更新它们的ctime的文件不会得到rsync,显然是这样的。但是目标目录中的相应文件仍然更新了它的ctime --这正在给我的备份过程带来麻烦。

是否有任何方法使rsync不更新尚未修改的文件的ctime?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2014-10-09 13:02:25

如果--checksum选项满足您的要求,您可以尝试:

-c,--校验和--这改变了rsync检查文件是否已被更改并需要传输的方式。如果没有此选项,rsync将使用“快速检查”(默认情况下)检查每个文件的大小和上次修改的时间是否在发送方和接收方之间匹配。此选项将更改此选项,以比较每个具有匹配大小的文件的128位校验和。生成校验和意味着双方将花费大量磁盘I/O来读取传输中的文件中的所有数据(而这是在为传输更改的文件而进行的任何读取之前),因此这会大大减慢速度。

在进行短期测试时,这是可行的,但在使用快捷-a选项时就不行了,这可能是因为它包含了-t,它保留了mod时间。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/634727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档