j'essaie de limiter la bande passante utilisée par Rsync en spécifiant l'option --bwlimit, mais cela ne semble pas fonctionner. Je ne sais pas si je fais quelque chose de mal ...:
La vitesse maximale de téléchargement possible = 10 Mbit/s. J'aimerais limiter rsync à environ 50%:
Commande 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
Résultat =
=============================================== ============================
Solution fournie ci-dessous:
[~] # 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
--bwlimit = KBytes/s applique une moyenne mobile pour limiter le débit résultant, . Vous ne le remarquerez donc que pour un transfert considérablement plus important que votre bande passante disponible.
à partir des man pages,
des blocs de données sont envoyés. Si rsync détermine que le transfert a été trop rapide, il attendra avant d’envoyer le prochain bloc de données. Le résultat est un taux de transfert moyen égal à la limite spécifiée.)
Jetez un coup d'œil à trickle qui semble utiliser ce concept avec un algorithme plus raffiné.
L'option limite (-l) semble fonctionner correctement dans scp
, qui utilise presque la même syntaxe que rsync et peut être utilisée comme alternative.
scp -l 200 hugefile.tgz example.org:bigstuff/
Exemple tiré de: http://betabug.ch/blogs/ch-athens/934
Comme alternative, j'aime beaucoup cstream
http://www.cons.org/cracauer/cstream.html .
cstream est un outil de gestion de flux à usage général comme UNIX dd, généralement utilisé dans les canaux construits en ligne de commande
Il pourrait être possible de l'utiliser avec rsync, aucune expérience avec cela. Voici un exemple d'utilisation avec 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'