2012-04-08 13 views
19

Rsyncが使用している帯域幅を--bwlimitオプションを指定して制限しようとしていますが、動作しないようです。私は何か間違っているかどうかわからない...:Rsync制限転送速度が動作しない

最大アップロード速度= 10mbit/sec。 =============

rsyncコマンド=

[~] # rsync --version 
rsync version 3.0.7 protocol version 30 

[~] # rsync -a --verbose --partial --bwlimit=500 -e 'ssh -p 2200 -i /share/ssh/id_dsa' [email protected]:/share/MD0_DATA/ /share/LocalData 

結果=

Traffic

:私は約50%までのrsyncを制限したいのですが========================================== ===============

以下に示すように、溶液:

[~] # ipkg install trickle 
Installing trickle (1.06-3) to root... 
Downloading http://ipkg.nslu2-linux.org/feeds/optware/ts509/cross/unstable/trickle_1.06-3_i686.ipk 
Installing libevent (2.0.16-1) to root... 
Downloading http://ipkg.nslu2-linux.org/feeds/optware/ts509/cross/unstable/libevent_2.0.16-1_i686.ipk 
Configuring libevent 
Configuring trickle 
Successfully terminated. 
[~] # trickle -d 500 rsync -a --verbose --partial -e 'ssh -p 2200 -i /share/ssh/id_dsa' [email protected]:/share/MD0_DATA/ /share/LocalData 
trickle: Could not reach trickled, working independently: No such file or directory 
receiving incremental file list 

答えて

19

--bwlimit = KBytes/sは、結果のスループットを抑制するために移動平均を適用します( )ので、使用可能な帯域幅よりもかなり大きい転送にのみ気付くでしょう。 manページから

は、データの

ブロックが送信されるrsyncは転送が速すぎた判断した場合は、その後、それは次のデータブロックを送信する前に待機します。結果は平均転送レートが指定された制限に等しい)

これはより洗練されたアルゴリズムでこの概念を引き受けるように見えるtrickleを見てください。

+0

グレート、トリクルは非常によく動作します。どうもありがとう ! – Daps0l

+1

MANページを読むのが怠惰な人のために、KBPSはKiloBYT /秒ではなく、毎秒KiloBYTESを指します。ヒントをありがとう、私はいつもあなたの答えを参照してください:) – arrayown

+0

10 mbpsはおよそ1.2 MB /秒に等しいので、それはまだ500 KB /秒をはるかに上回っています。 – UtahJarhead

0

代わりに、私は本当に好きですcstreamhttp://www.cons.org/cracauer/cstream.htmlです。

はCStreamは、rsyncを、それと経験がないとそれを使用することができるかもしれない、通常はコマンドライン・構築パイプ

に使用されるUNIX ddと、のような汎用ストリーム処理ツールです。 tarでどのように使用するかの例です。

http://www.commandlinefu.com/commands/view/2543/throttle-bandwidth-with-cstream

TLは、DR

tar -cj /backup | cstream -t 777k | ssh host 'tar -xj -C /backup' 
関連する問題