我有一个拥有 Shell 帐户(带有 Jailkit)的用户,坚持每天 rsync 500GB 的数据。
有没有办法限制 rsync 为每秒 2mbits?如果我必须通过 IP 执行此操作,我如何知道用户正在同步的 IP,以及我将使用什么来执行此操作? IP表??
答案1
听起来用户不会自愿表现得很好并在每次调用时使用 --bwlimit rsync
。
--bwlimit=RATE limit socket I/O bandwidth
iptables
这个问题+答案可能涵盖了方法:
答案2
我不熟悉 jamkit,所以我不确定实现这个的确切细节,但你可以使用 sluice (http://kernel.ubuntu.com/~cking/sluice/)对流量进行速率限制。
一个简单的解决方案可能是用一个简单的 shell 脚本替换用户 chroot 环境中的 rsync 二进制文件,例如:
#!/bin/sh -e
rsync "$@" | sluice ...