Ускорение rsync по кому-то

(Его некоторое время, так как я работал с контроллерами PERC),

Если PERC распознает, что свободное пространство доступно, это могло бы быть более быстрым и легче создать новый зеркальный том в свободном пространстве и расшириться в то Управление дисками использования. Это не идеальное решение и введет миниатюрное замедление в доступ к диску (1% макс., я предполагаю), но это могло дать Вам пространство для выживания до следующего обновления оборудования.

8
задан 24 September 2009 в 08:32
7 ответов

Я думаю, что у Вас есть неверное толкование rsync алгоритма и как инструмент должен быть применен.

Преимущество производительности Rsync прибывает из выполнения передач дельты - то есть, перемещая только измененные биты в файл. Для определения измененных битов файл должен быть считан источником и узлами назначения и контрольными суммами блока, сравненными для определения который измененные биты. Это - "волшебная" часть rsync - сам rsync алгоритм.

Когда Вы монтируете целевой объем с SMB и используете rsync для копирования файлов с того, что Linux "рассматривает" как локальный источник и локальное место назначения (оба смонтировались на той машине), самые современные rsync версии переключают на 'целый файл' режим копии и выключают алгоритм копии дельты. Это - "победа", потому что с алгоритмом копии дельты на rsync считал бы весь целевой файл (по проводу от NAS) для определения то, что изменили биты файла.

"Правильный путь" для использования rsync состоит в том, чтобы выполнить rsync сервер на одной машине и rsync клиент на другом. Каждая машина считает файлы из своего собственного локального устройства хранения данных (который должен быть очень быстрым), договоритесь о том, что биты файлов изменили и только передают те биты. Они путь Вы используете rsync суммы сфабрикованного 'CP'. Вы могли выполнить то же самое с 'CP', и это, вероятно, будет быстрее.

Если Ваши поддержки устройства NAS, выполняющие rsync сервер (или клиент) затем, Вы находитесь в бизнесе. Если Вы просто собираетесь смонтировать его на исходной машине с помощью SMB затем, Вы могли бы также просто использовать 'CP' для копирования файлов.

28
ответ дан 2 December 2019 в 22:40
  • 1
    Ooo! Downvotes! I' d быть любопытным услышать, почему Вы downvoted ответ, рассматривая it' s технически точный. –  Evan Anderson 24 September 2009 в 11:44
  • 2
    Я can' t выполняют rsync сервер на NAS, иначе я сделал бы так. Если не с помощью rsync сервера, rsync может использовать контрольную сумму или размер и дату и время, чтобы узнать ли измененный файл или нет. Согласно странице справочника, it' ll используют размер и дату и время по умолчанию, но мой опыт состоит в том, что это не делает этого и меня don' t видят способ вызвать его. Я только вижу способ вызвать вычисление контрольной суммы. - контрольная сумма: Без этой опции rsync использует " быстрый check" это (по умолчанию) проверяет если каждый file' s размер и время последнего изменения соответствуют между отправителем и получателем. –  pupeno 24 September 2009 в 11:46
  • 3
    Evan, дайте мне несколько минут для записи моего комментария. –  pupeno 24 September 2009 в 11:47
  • 4
    Какое поведение Вы видящий that' s сообщение Вам, что it' s вычисление контрольной суммы файлы? " быстрый check" поведение является поведением по умолчанию, таким образом, there' s никакой путь к " force" это. Если Вы can' t работают, rsync на NAS просто используют ' cp'. It' ll быть столь же быстрым или быстрее. –  Evan Anderson 24 September 2009 в 11:52
  • 5
    Согласно тому, как я понимаю работу rsync, она должна проверить локальную дату и время, удаленную дату и время и если они соответствуют не, копируют файл. Что означает это shouldn' t копируют 99% файлов, но то, что это берет больше, чем 12hs приблизительно для 60 ГБ, говорит мне, что это или копирует все (который, кажется, то, что Вы подразумеваете путем высказывания, что CP будет быстрее), или что это - на самом деле вычисление контрольной суммы, что означает it' s, не копируя все, но это загружает все. –  pupeno 24 September 2009 в 11:59

попробуйте это, это думает, что aleast дает Вам на 10% больше что скорость Ваше получение http://www.thegeekstuff.com/2009/09/linux-remote-backup-using-rsnapshot-rsync-utility/

0
ответ дан 2 December 2019 в 22:40

Запахи как Вы имеют более дешевый NAS. Это могло также быть от Вашей сетевой пропускной способности...

"Стандартный" потребительский NAS действительно слаб когда дело доходит до тяжелого IO, который является тем, что Вы пытаетесь сделать здесь. Это мог также быть дешевый переключатель, подключающий Ваш ПК и Ваш NAS, который не достаточно силен для обработки всех пакетов правильно.

0
ответ дан 2 December 2019 в 22:40
  • 1
    Тот же NAS, тот же переключатель, другой компьютер, запустив Windows, назад до него, намного больше информации, за менее чем четыре часа. –  pupeno 24 September 2009 в 11:49

Это кажется, что метки времени являются Вашей проблемой, поскольку эта страница имеет отношение:

http://www.goodjobsucking.com/?p=16

Предлагаемое решение состоит в том, чтобы добавить

--modify-window=1

к rsync параметрам.

6
ответ дан 2 December 2019 в 22:40

Мысль я добавил бы свои 2 пункта здесь.

Мой брат только что установил NAS Buffalo в своей офисной сети. Он теперь смотрит на удаленные резервные копии, так, чтобы был должен офис сгореть дотла, по крайней мере, у него все еще есть все свои бизнес-документы в другом месте (много сотен миль далеко).

Мое первое препятствие должно было получить VPS, который он имеет (маленький Linux виртуальный частный сервер, ничто слишком раскормленное) к коммутируемому доступу как пользователь VPN к его широкополосному маршрутизатору (он использует Draytek для этого) так, чтобы это само могла быть часть его VPN, и таким образом, это может, затем может получить доступ к NAS непосредственно, безопасным способом. Отсортировали это и работающий блестяще.

Следующая проблема затем передавала файлы с NAS на сервер VPS. Я начался путем выполнения Samba, монтируются и столкнулся точно с тем же (или еще хуже) проблема, которую Вы описали. Я сделал пробный прогон rsync, и он принял 1 час 30 минут только для разработки, какие файлы он собирался передать, потому что, поскольку Evan говорит, в соответствии с этим методом, другой конец не является rsync, таким образом, он должен сделать, много вызовов/чтений системы регистрации на Samba монтируются (через соединение PPTP/tunnelled с круговой задержкой приблизительно 40 мс). Абсолютно неосуществимый.

Мало я знал, что Buffalo на самом деле выполняет rsync демона так, с помощью этого вместо этого, весь пробный прогон занимает только 1 минуту 30 секунд для 87k файлов в общей сложности 50 ГБ. Очевидно, для передачи 50 ГБ файлов (из NAS, который находится на широкополосной линии связи с только 100k/sec исходящая пропускная способность) - другой вопрос полностью (это займет несколько дней), но, однажды начальная буква rsync завершен, любые возрастающие резервные копии должны быть освещением смазки (его данные не собираются изменяться очень ежедневно).

Мое предложение является использованием достойный NAS, который поддерживает rsync по причинам, которые Evan сказал выше. Это решит все Ваши проблемы.

3
ответ дан 2 December 2019 в 22:40

Да, вы можете ускорить это. Вам нужно сделать так, чтобы источник или место назначения выглядели как удаленный компьютер, например, указав его как « localhost: ».

Вы заявили, что монтируете общий ресурс SMB локально. Это делает источник или назначение похожим на локальный путь к rsync. На странице руководства rsync указано, что копии, в которых исходный и конечный пути являются локальными, будут копировать весь файл. Об этом говорится в параграфе для параметра "--whole-file" на странице руководства. Поэтому дельта-алгоритм не используется. Использование обходного пути « localhost: » восстановит функциональность дельта-алгоритма и ускорит передачу.

4
ответ дан 2 December 2019 в 22:40

Есть два потенциальных источника проблемы: либо вы используете неверные параметры командной строки, либо ваш NAS имеет проблемы с метками времени (или и то, и другое :-). Пожалуйста, проверьте эту ветку «rsync to NAS копирует все каждый раз» для получения дополнительной информации.

0
ответ дан 2 December 2019 в 22:40

Теги

Похожие вопросы