场景如下:在源服务器上,由于旧磁盘阵列空间不足,我们添加了新磁盘阵列。因此,我使用“cp”将旧磁盘阵列中的内容复制到新磁盘阵列。然后我卸载了旧磁盘阵列并安装了新阵列,同时保留了分区名称。
第二天,我们的 rsync 进程运行了,出于某种原因,它不仅复制了增量/不同的文件,而且似乎正在遍历整个文件……我不确定它在做什么,有巨大的 CPU进程的使用而不是大量的 IO 使用。所以,我猜它正在做一些校验和过程来比较源和目标之间的数据而不是复制文件?
无论如何,以前有人见过这种 rsync 行为吗?是什么触发了这种行为?是因为我“cp”了文件,因此文件不同吗?rsync 是否有一个文件,其中 rsync 保留了它之前扫描过的文件列表,以便它知道它只会复制增量文件?
如果您在运行时没有使用-p
保留“修改时间、访问时间、文件标志、文件模式、用户 ID 和组 ID”的选项(每个man
页面;ACL 也是如此)cp
,那么很可能是修改/访问时代变了。
如果您的rsync
命令包含-a
或-t
选项,则它会尝试更新所有这些新访问时间。我不确定rsync
实际算法是什么,但我相信即使您的rsync
命令没有尝试更新修改/访问时间,它也可能必须开始比较块或块的校验和修改时间,看看它是否真的改变了。
归档时间: |
|
查看次数: |
271 次 |
最近记录: |