Змусити rsync використовувати меншу пропускну здатність?


46

Я використовую rsync для резервного копіювання та синхронізації мережевих спільних ресурсів та мого комп'ютера. Я це зрозумів.

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

Зокрема, зараз я слухаю Last.FM, але він продовжує різати, оскільки rsync насичує локальне з'єднання.

Це здається малоймовірним, але в цьому випадку моя LAN справді така ж швидка, як і мій Інтернет (10 мегабіт для обох, так, університет!). У будь-якому випадку у мене немає додаткової пропускної здатності під час роботи rsync. Якісь ідеї?

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

Відповіді:


67

Використовуйте --bwlimit=KBPS опцію обмеження пропускної здатності вводу / виводу, Кбайт в секунду

Також зверніться до чоловічої сторінки .


Ідеально. Я не знаю, чому я пропустив це на manсторінці в перший раз.
Майк Купер

8
після факту, але хотів зазначити, що ця опція обмежує середню пропускну здатність. перший файл надсилається повним сигналом, а наступні файли придушуються, щоб спробувати перейти до вказаного значення пропускної здатності. щоб по-справжньому обмежити пропускну здатність, ви хочете заглянути в щось на кшталтtrickle
joshtronic,

1
@joshtronic Мені було цікаво, чи помітили ви відповідь supervacuo? Я зараз перевірив це і можу поручитися за те, що "перший файл надсилається повністю", не відповідає дійсності, за винятком найменших файлів.

20

(Це було б ідеально бути відповіддю на коментар joshtronic в )

--bwlimit=XXнасправді є протилежна проблема; передача - це справді ковзний середній показник - як корисно пояснює Rsync Basics :

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

Не зрозуміло, чи береться середнє значення для файлів, але в будь-якому випадку це неправда

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

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

Ви маєте рацію, що дрібничка буде кращим рішенням, але те, що я розумію з пояснювальної роботи (" Trickle: Shaper Bandwidth Shaper for Unix-like Systems "), - це trickle також працює, затримуючи введення-виведення на основі ковзного середнього значення передачі . Я думаю, що сподіватися на його рекомендацію в тому, що він використовує вимірювання високої частоти для застосування середнього. Мені не вдалося знайти жодних даних в Інтернеті, які підтверджували б, що це так (хоча в статті, зазначеній вище, посилається на rsyncкод як "простий", що дозволяє авторам trickleвважати, що їхня робота - краща робота).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.