Как установить ограничение скорости rsync на использование всей полосы пропускания
Команда rsync использует всю доступную пропускную способность и генерирует большой поток ввода-вывода. Как установить лимит скорости передачи файлов команды rsync в Linux или Unix-подобной системе? Как я могу заставить скрипт rsync не использовать всю мою пропускную способность?
Вы можете легко ограничить пропускную способность ввода-вывода, используя опцию --bwlimit . В этом уроке вы узнаете, как настроить ограничение ввода-вывода, используя команду rsync для Linux, MacOS, FreeBSD и Unix-подобных систем.
Как ограничить скорость передачи rsync
Синтаксис:
1 2 3 4 5 |
rsync --bwlimit=KBPS src dst rsync --bwlimit=KBPS [options] src dst rsync --bwlimit=KBPS [options] src user@dst rsync --bwlimit=KBPS [options] user@src /path/to/dir rsync --bwlimit=KBPS -a -P /path/to/dir/ user@server1.system-admins.ru |
Вы устанавливаете предел ввода-вывода в 1000 Кбайт в секунду:
1 2 3 |
$ rsync --bwlimit=1000 /path/to/source /path/to/dest/ $ rsync --bwlimit=1000 /var/www/html/ \ backups@server1.system-admins.ru:~/mysite.backups/ |
В этом примере скачиваются файлы с FreeNAS-сервера с 5000 КБ/с в текущий каталог:
1 2 |
$ rsync --bwlimit=5000 --delete -P -az -H --numeric-ids \ vivek@192.168.2.30:linode-www . |
Знакомтесь ionice
Используйте команду ionice для установки или получения класса планирования и приоритета ввода-вывода для такой программы, как rsync или собственный сценарий резервного копирования. Таким образом, вы можете управлять пропускной способностью ввода-вывода с помощью утилиты ionice в Linux следующим образом:
1 |
# /usr/bin/ionice -c2 -n7 /root/scripts/nas.backup.full |
ИЛИ
1 2 |
# /usr/bin/ionice -c2 -n7 rsync \ -bwlimit=1000 /path/to/source /path/to/dest/ |
Где:
- -c или -class {class}: имя или номер класса, 0: нет, 1: (real time) в реальном времени, 2: (best-effort) наивысший приоритет ввода вывода, 3: (idle) незанятое.
- -n или --classdata {num} : priority (0..7) в указанном классе планирования, только для классов в realtime b best-effort
Администрирование серверов, настройка резервного копирования, [email protected]