45

Я использую rsync для резервного копирования и синхронизации сетевых ресурсов и моего компьютера. Я с этим разобрался.

Проблема в том, что при использовании rsync для передачи файлов он использует всю возможную пропускную способность. Я хочу ограничить его скорость, чтобы использовать свое соединение для других целей.

В частности, сейчас я слушаю Last.FM, но он продолжает отключаться, так как rsync насыщает локальную связь.

Это звучит маловероятно, но в этом случае моя локальная сеть действительно работает так же быстро, как и мой интернет (10 мегабит для обоих, ура, университет!). В любом случае, у меня нет дополнительной пропускной способности, пока работает rsync. Есть идеи?

О, кстати, конкретно я использую Ubuntu 9.04.

2 ответа2

67

Используйте параметр --bwlimit=KBPS чтобы ограничить пропускную способность ввода-вывода, КБ / с

Также обратитесь к странице справочника.

21

(В идеале это будет ответ на комментарий Joshtronic)

--bwlimit=XX на самом деле имеет противоположную проблему; передача действительно скользящая средняя - в качестве Rsync Основы услужливо объясняет:

Из-за особенностей передачи rsync блоки данных отправляются, и, если rsync определит, что передача была слишком быстрой, он будет ждать перед отправкой следующего блока данных. Результатом является средняя скорость передачи, равная указанному пределу.

Не ясно, берется ли среднее значение по файлам, но в любом случае это не так

первый файл отправляется на полную мощность, а последующие файлы регулируются, чтобы попытаться перейти к указанному значению пропускной способности

Фактически первый файл будет ограничен, пока он достаточно велик для усреднения (что означает все файлы, кроме самых маленьких).

Вы правы, что трикл был бы лучшим решением, но что я понимаю из пояснительной статьи (« Тонкая струйка: формирователь полосы пропускания пользовательского пространства для Unix-подобных систем »), что trickle также работает путем задержки ввода-вывода на основе перемещения передачи средний. Я предполагаю, что надежда рекомендовать это состоит в том, что он использует высокочастотное измерение, чтобы применить среднее значение. Я не смог найти в Интернете никаких данных, подтверждающих это (хотя в приведенной выше статье код rsync упоминается как "простой", что наводит на мысль о том, что авторы trickle считают, что их работа лучше).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .