2012-04-08 31 views
19

Estoy tratando de limitar el ancho de banda que utiliza Rsync especificando la opción --bwlimit, pero parece que no funciona. No sé si estoy haciendo algo mal ...:La velocidad de transferencia de límite de Rsync no funciona

La máxima velocidad de carga posible = 10mbit/seg. Me gustaría limitar rsync a alrededor del 50%:

comando 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 

Resultado =

Traffic

============= =============================================== ===============

solución conforme a lo dispuesto a continuación:

[~] # 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 

Respuesta

19

--bwlimit = KBytes/s aplica una media móvil para reducir el rendimiento resultante, , por lo que solo se dará cuenta de que la transferencia es considerablemente mayor que el ancho de banda disponible.

de las páginas man,

bloques de datos se envían, entonces si rsync determina la transferencia era demasiado rápido, se va a esperar antes de enviar el siguiente bloque de datos. El resultado es una tasa de transferencia media igualando el límite especificado.)

echar un vistazo a trickle que parece asumir este concepto con un algoritmo más refinado.

+0

Grande, goteo funciona muy bien. Muchas gracias ! – Daps0l

+1

Para cualquier persona demasiado floja para leer la página MAN, la KBPS se refiere a KiloBYTES por segundo, no KiloBITS por segundo. Gracias por la sugerencia, siempre me refiero a su respuesta, por cierto :) – arrayown

+0

10 mbps es aproximadamente igual a 1.2 MB/sec, por lo que todavía está muy por encima de 500 KB/seg. – UtahJarhead

0

Como alternativa, me gusta mucho cstream .

cstream es una herramienta corriente de manipulación de propósito general como UNIX dd, que generalmente se usa en tuberías de comandos-construido

Podría ser posible utilizarlo con rsync, ninguna experiencia con eso. Aquí hay un ejemplo de cómo usarlo con 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' 
Cuestiones relacionadas