![即使我在本地硬盘之间复制,rsync 也会使用增量编码吗?](https://linux22.com/image/47752/%E5%8D%B3%E4%BD%BF%E6%88%91%E5%9C%A8%E6%9C%AC%E5%9C%B0%E7%A1%AC%E7%9B%98%E4%B9%8B%E9%97%B4%E5%A4%8D%E5%88%B6%EF%BC%8Crsync%20%E4%B9%9F%E4%BC%9A%E4%BD%BF%E7%94%A8%E5%A2%9E%E9%87%8F%E7%BC%96%E7%A0%81%E5%90%97%EF%BC%9F.png)
rsync 是否使用增量编码即使我同步的两个目录都在本地硬盘上(或者只是通过网络复制时),以减少数据传输?
答案1
rsync
在跨文件系统进行同步时显式打开该--whole-file
选项,而不是在网络位置和文件系统之间进行同步。增量传输算法旨在最大限度地减少网络流量,但代价是可能产生额外的本地 IO 流量。简单地在本地传输整个文件比完全读取两个文件以查找可能的匹配项要快。
请注意,rsync 将 NFS 等网络挂载视为本地,这也会导致 IO 减少,从而比在两端读取整个文件更少的网络流量,尽管如果可能的话最好让 rsync 进行网络传输。