Pokud používáte obslužný program rsync k udržení synchronizace záloh mezi servery nebo s místním počítačem, možná budete chtít skriptu zabránit v používání příliš velké šířky pásma. Nicméně rsync dělá hodně síťových I/O. Smyslem omezení šířky pásma je zajistit, aby vaše záložní skripty neblokovaly síťové připojení.
Omezením šířky pásma, kterou vaše zálohy využívají, přirozeně dojde k jejich zpomalení, ale pokud se s tím dokážete vypořádat, je to způsob, jak to udělat.
Zde je normální příkaz rsync:
$ rsync –avz -e 'ssh' /path/to/source user@remotehost:/path/to/dest/
Co budete chtít udělat, je použít –bwlimit parametr s KB/s hodnotu, například takto:
$ rsync –bwlimit=[kb/second] –avz -e 'ssh' /path/to/source user@remotehost:/path/to/dest/
Pokud jste tedy chtěli omezit přenos na přibližně 10 000 KB/s (9,7 MB/s), zadejte:
$ rsync –bwlimit=10000 –avz -e 'ssh' /path/to/source user@remotehost:/path/to/dest/
Zde je příklad ze skutečného světa:
rsync –bwlimit=10000 –avz -e 'ssh' /backup/ [email protected]:/backup/
Zde bude rsync omezen na šířku pásma 10 000 kb/s nebo přibližně 9,7 MB/s.
Použití kapky
Existuje alternativa k volbě -bwlimit. Můžete také použít příkaz „trickle“ k omezení šířky pásma jakékoli spuštěné aplikace. Syntaxe příkazu trickle je:
$ trickle -u|-d [uploadLimit|downloadLimit] [app]
Zde,
-u uploadLimit -> omezuje šířku pásma nahrávání
-d downloadLimit -> omezuje rychlost stahování
aplikace -> je aplikace, pro kterou chcete omezit šířku pásma, např. rsync.
V našem případě tedy omezíme využití šířky pásma příkazu rsync na 0000 kb/s pomocí níže uvedených příkazů:
$ trickle -s -u 10000 -d 10000 rsync –avz -e 'ssh' /backup/ [email protected]:/backup/