Thank you for reading this post, don't forget to subscribe!
Если вы используете утилиту rsync для синхронизации ваших резервных копий между серверами или локальным компьютером, возможно, вы захотите запретить скрипту использовать слишком большую полосу пропускной способности сети.
Смысл ограничения пропускной способности заключается в том, чтобы ваши скрипты резервного копирования не засоряли сетевое соединение.
Естественно, ограничение пропускной способности, которую используют ваши резервные копии, заставит их работать медленнее.
Вот обычная команда rsync:
1 |
$ rsync –avz -e ‘ssh’ /path/to/source user@remotehost:/path/to/dest/ |
1 |
$ rsync –bwlimit=[kb/second] –avz -e 'ssh' /path/to/source user@remotehost:/path/to/dest/ |
1 |
$ rsync –bwlimit=10000 –avz -e ‘ssh’ /path/to/source user@remotehost:/path/to/dest/ |
Вот пример из реального мира:
1 |
rsync –bwlimit=10000 –avz -e 'ssh' /backup/ root@192.168.0.51:/backup/ |
Использование trickle
Существует альтернатива опции -bwlimit.
Вы также можете использовать команду «trickle» для ограничения пропускной способности любого приложения, которое вы запускаете.
Синтаксис команды trickle:
1 |
$ trickle -u|-d [uploadLimit|downloadLimit] [app] |
Где:
- -u uploadLimit -> ограничивает полосу загрузки
- -d downloadLimit -> ограничивает полосу скачивания
- app -> это приложение, для которого вы хотите ограничить пропускную способность, например Rsync.
Таким образом, в нашем случае мы ограничим использование полосы пропускания команды rsync до 10000 КБ / с, используя следующие команды:
1 |
$ trickle -s -u 10000 -d 10000 rsync –avz -e 'ssh' /backup/ root@192.168.0.51:/backup/ |