让 rsync 使用更少的带宽?

Mik*_*per 46 bandwidth rsync

我使用 rsync 来备份和同步网络共享和我的计算机。我已经弄清楚了。

问题是,当使用 rsync 传输文件时,它会使用它所能使用的所有带宽。我想限制它的速度,以便我可以将我的连接用于其他事情。

具体来说,现在我正在听 Last.FM,但它一直在切断,因为 rsync 使本地连接饱和。

这听起来不太可能,但在这种情况下,我的 LAN 真的和我的互联网一样快(两者都是 10 兆,耶大学!)。无论哪种方式,我在 rsync 运行时都没有额外的带宽。有任何想法吗?

哦,顺便说一句,特别是我正在运行 Ubuntu 9.04。

Dav*_*llo 67

使用--bwlimit=KBPS 选项来限制 I/O 带宽,每秒千字节数

另请参阅手册页

  • 事后,但想指出这个选项限制了平均带宽。第一个文件被完全发送,随后的文件被限制以尝试降低到指定的带宽值。要真正限制带宽,您需要研究类似“涓流”之类的东西 (8认同)

小智 20

(理想情况下,这将是对joshtronic 评论的回复)

--bwlimit=XX实际上有相反的问题;转移确实是一个移动平均线——正如 Rsync Basics 有帮助地解释的那样

由于 rsync 传输的性质,发送数据块,然后如果 rsync 确定传输太快,它将在发送下一个数据块之前等待。结果是平均传输速率等于指定的限制。

不清楚是否跨文件取平均值,但在任何情况下都不是这样

第一个文件被完全发送,随后的文件被限制以尝试降低到指定的带宽值

事实上,只要第一个文件大到足以进行平均,就会被限制(这意味着除了最小的文件之外的所有文件)。

你是对的,涓流将是一个更好的解决方案,但我从解释性文件(“涓流:类 Unix 系统的用户空间带宽整形器”)中了解到,它trickle 可以通过基于移动传输平均值延迟 I/O 来工作. 我想推荐它的希望是它使用更高频率的测量来应用平均值。我无法在网上找到任何数据来证实这种情况(尽管上面的论文确实将rsync的代码称为“简单”,表明作者trickle认为他们的代码做得更好)。