解释rsync的--blocking-io选项

时间:2010-09-15 10:25:53

标签: rsync nonblocking

我在理解rsync中的--blocking-io选项时遇到问题。这是手册页中的描述:

“这告诉rsync在启动远程shell传输时使用阻塞I / O。如果远程shell是rsh或remsh,rsync默认使用阻塞I / O,否则默认使用非阻塞I / O 。(请注意,ssh更喜欢非阻塞I / O.)“

  • 使用rsync作为传输时, 即你不使用-e,这是否有 一个效果呢?

  • 我猜运行rsync的结果 有或没有该选项是 相同而不同之处在于“如何” rsync进行转移?

  • 我想要的主要原因是什么? 使用这个选项?性能? 看起来像rsync提供了明智的 默认为我,所以我为什么要这样做 完全使用它?

  • 最后一个:“注​​意什么? ssh更喜欢非阻塞I / O“ 意思?

1 个答案:

答案 0 :(得分:5)

对不起,我的研究部分混淆了。那是我的错。 (更正或添加的内容以斜体显示)

Q1:是的。 Rsync使用异步I / O(非阻塞)。通过使用该选项,您将强制它使用阻塞I / O模式。 当远程shell(rsh)无法处理非阻塞模式时,将使用此方法。

Q2:是的。最终结果将是相同的。

问题3:如果远程shell无法处理非阻塞i / o ,您可能希望使用此选项

问题4:“非阻塞模式确保当您的连接中断时,您的屏幕会话不会阻塞('挂起')。” (http://webcache.googleusercontent.com/search?q=cache:xmCnC0y5QU0J:www.warp13.co.uk/irssissh+ssh+blocking+mode&cd=13&hl=en&ct=clnk&gl=us&client=firefox-a) SSH只是喜欢

我希望有所帮助!