我有一个很大的 iso 映像,当前正在由打开空间保留的 torrent 客户端下载:这意味着文件大小不会改变,而 (4 Mib) 中的某些块由于下载而不断变化。
在 90% 下载时,我执行初始 rsync 以节省时间:
$ rsync -Ph DVD.iso /media/another-hdd/
发送增量文件列表
DVD.iso
2.60G 100% 40.23MB/s 0:01:01 (xfer#1, to-check=0/1)
发送 2.60G 字节 接收 73 字节 34.59M 字节/秒
总大小为 2.60G 加速为 1.00
然后,当文件完全下载后,我再次 rsync:
total size is 2.60G speedup is 1.00
Run Code Online (Sandbox Code Playgroud)
Speedup=1 表示未使用增量传输,尽管 90% 的文件没有更改,但目标目录在另一个 FS 上并且复制需要几分钟。为什么不尝试加快传输速度?!如何强制rsync使用增量传输?
HRJ*_*HRJ 19
这个问题的直接答案是:
使用该--no-W标志来强制增量压缩,无论是本地还是远程。
更新:看起来这个故事还有更多内容。在delta compression似乎只启用之间接受和rsync的发射过程。将文件输出到文件系统时rsync,即使启用了增量压缩,仍可能会写出整个文件。
请参阅此处的“Wakan Tanka”调查。
更新 2:该--inplace选项仅写入文件的更改部分。但是请注意--sparse,当使用目标文件时,它与手册冲突并且不推荐使用。
小智 5
默认情况下,出于各种安全原因,rsync 首先创建目标文件的新副本,然后替换它。您可以通过指定--inplace和 来覆盖它--no-whole-file。这告诉 rsync 对目标文件进行就地编辑,接受手册页中记录的各种风险(对于这种情况通常较小)。
| 归档时间: |
|
| 查看次数: |
30699 次 |
| 最近记录: |