rsync 和 xfr#1,to-chk=0/1,它们是什么意思?

shi*_*ish 12 debian rsync

我做的事情,如:-

$ copy debian-8.2.0-amd64-DVD-1.iso /media/shirish/4719-38E5/
Run Code Online (Sandbox Code Playgroud)

复制这里是一个别名:-

$ alias copy
alias copy='rsync --progress -ravz'
Run Code Online (Sandbox Code Playgroud)

当它执行命令时,它需要很长时间才能完成并执行:-

$ copy debian-8.2.0-amd64-DVD-1.iso /media/shirish/4719-38E5/
sending incremental file list
debian-8.2.0-amd64-DVD-1.iso
  3,607,855,104 100%    9.11MB/s    0:06:17 (xfr#1, to-chk=0/1)

sent 3,466,268,276 bytes  received 35 bytes  3,481,937.03 bytes/sec
total size is 3,607,855,104  speedup is 1.04
Run Code Online (Sandbox Code Playgroud)

现在我有两个问题:-

一种。rsync 中的 -z 没有记录,有人知道它是做什么的吗?很有可能这面旗帜以前就在那里,现在已经不在了。

另一件事,有人知道xfr#1, to-chk=0/1实际做什么吗?

我通常sync在命令完成后执行,有没有人知道是否可以使用它,因为复制需要很长时间。

人们也可以使用一些更好、更好的方法,以便我可以使用别名来完成相同的任务。对我来说,有进步很重要。几个月前,我确实遇到了一个高级软件cp,它也有一个进度条,用于显示正在复制的文件的进度。

希望快速解决上述问题。

shi*_*ish 16

解决了——

-z, --compress              compress file data during the transfer
    --compress-level=NUM    explicitly set compression level
Run Code Online (Sandbox Code Playgroud)

这部分似乎很有趣。

    --progress
Run Code Online (Sandbox Code Playgroud)

此选项告诉 rsync 打印显示传输进度的信息。这给了无聊的用户一些观看的东西。使用现代 rsync 这与指定相同

    --info=flist2,name,progress
Run Code Online (Sandbox Code Playgroud)

但是这些信息标志的任何用户提供的设置都优先(例如“ --info=flist0 --progress”)。

当 rsync 传输常规文件时,它会更新如下所示的进度线:

782448  63%  110.64kB/s    0:00:04
Run Code Online (Sandbox Code Playgroud)

在本例中,接收方重建了 782448 字节或发送方文件的 63%,正在以每秒 110.64 千字节的速率重建,如果保持当前速率直到结束,则传输将在 4 秒内完成。

如果使用 rsync 的增量传输算法,这些统计数据可能会产生误导。例如,如果发送方的文件由基础文件和附加数据组成,则当接收方获得文字数据时,报告的速率可能会急剧下降,并且传输完成所需的时间可能比接收方估计的要长得多完成文件的匹配部分。

文件传输完成后,rsync 将进度行替换为如下所示的摘要行:

1,238,099 100%  146.38kB/s    0:00:08  (xfr#5, to-chk=169/396)
Run Code Online (Sandbox Code Playgroud)

在这个例子中,文件总共有 1,238,099 字节长,整个文件的平均传输速率是 146.38 KB/s,在 8 秒内完成,这是当前 rsync 期间常规文件的第 5 次传输会话,并且在文件列表中的 396 个 文件中,还有 169 个文件需要接收方检查(以查看它们是否是最新的)

在增量递归扫描中,rsync 在到达扫描结束之前不会知道文件列表中的文件总数,但是由于它在扫描期间开始传输文件,因此它会显示一行带有文本“ ir-chk”(用于增量递归检查)而不是“to-chk”,直到它知道列表的完整大小,此时它将切换到使用“to-chk”。因此,看到“ir-chk”让您知道文件列表中的文件总数仍在增加(并且每次增加时,要检查的文件数将增加添加到的文件数)列表)。