rsync очень медленный (фактор 8-10) по сравнению с cp при копировании файлов из nfs-share в локальный каталог

У меня есть недавно установленный Ubuntu-сервер, который должен быть новым резервным сервером для нашего VM-хранилища. На сервере есть 4 компьютера, из которых 2 из 10Gbit (на самом деле это intel x540-T2 с самым новым драйвером), которые используются для подключения к SAN. У меня есть nfs-share, смонтированный локально и сравниваемый с разницей скорости при копировании каталога с ~ 30 файлами, около 15 vm-изображений и соответствующих файлов журналов. Изображения от 8 до 600 ГБ.

С помощью:

cp -rf /mnt/nfs-share /backup-storage/ 

bmon показывает, следовательно, около 600 Мбайт / с.

С помощью

 rsync -av /mnt/nfs-share /backup-storage/ 

bmon показывает некоторые пакеты в первые секунды, останавливается в течение примерно 30 секунд и составляет примерно 60-75 Мбайт / с. Процессор составляет около 60%.

Что мне следует изменить, чтобы использовать rsync с той же производительностью, что и cp ?

2 Solutions collect form web for “rsync очень медленный (фактор 8-10) по сравнению с cp при копировании файлов из nfs-share в локальный каталог”

Я думаю, что эти различия довольно хорошо установлены между cp и rsync . См. Эту статью в качестве ссылки, озаглавленной: Посмотрите на производительность rsync .

выдержка:

 The four commands tested were: rsync $SRC $DEST echo $SRC | cpio -p $DEST cp $SRC $DEST cat $SRC > $DEST/$SRC The results for rsync, cpio, cp, and cat were: user sys elapsed hog MiB/s test 5.24 77.92 101.86 81% 100.53 cpio 0.85 53.77 101.12 54% 101.27 cp 1.73 59.47 100.84 60% 101.55 cat 139.69 93.50 280.40 83% 36.52 rsync 

Я использую rsync ежедневно. Есть вещи, которые вы можете сделать, чтобы улучшить ситуацию.

Например, вы можете попробовать использовать переключатель -W :

 -W, --whole-file copy files whole (w/o delta-xfer algorithm) 

Также я бы посоветовал убедиться, что у вас есть версии rsync 3.x. Были заметные улучшения, когда мы перешли к более новым версиям.

Способ сделать rsync имеет такую ​​же производительность, что и cp, чтобы записать его «cp».

Разница между двумя командами значительна, хотя чистый эффект может быть одинаковым. В частности, rsync выполняет кучу чтения, чтобы узнать, нужно ли копировать какой-либо файл или часть файла.

Есть ли какая-то причина, по которой вы хотите использовать rsync? Поскольку cp копирует «слепо», вы увидите более высокую производительность. Если для набора условий запуска используется механизм дельта-передачи rsync, вы увидите снижение скорости передачи и использование ЦП в значительной степени, как вы сообщаете.

  • BCache и шифрование диска
  • Linux-PAM не может использовать пользовательский модуль PAM - возможно, связанный с многоархивным
  • Установите mdadm без postfix в ubuntu trusty
  • Подключение с сервера OpenVPN к серверу MySQL
  • Простой «киоск» - StartX с одним приложением говорит, что протокол не указан
  • проблемы с загрузкой программного обеспечения в Ubuntu на Windows
  • Windows и Ubuntu с двойной загрузкой
  • Ubuntu12.04: как отключить процесс демона при запуске
  • Владение Apache и разрешения для wordpress
  • Установите общий / opt так, чтобы оба моих дистрибутива Linux могли его использовать
  • Команда вывода Bash слишком велика, не может ее прочитать!
  • Interesting Posts

    sed: удалить все совпадения в файле и вставить некоторые строки, в которых первое совпадение было

    Не будут ли затронуты пакеты, обрабатываемые цепочкой iptables при обновлении правил iptables?

    Назначение адреса URL, сайта и глобального IPv6

    Как восстановить данные, потерянные во время прерывания локального перетаскивания?

    Инициируйте другой терминал, запускающий tmux (от терминала, запускающего tmux)

    IPython Qt Console не имеет названия в коммутаторе приложений GNOME

    Безопасность sudo не запрашивает пароль после первого раза

    странные журналы в / var / log / messages

    rsync -delete-excluded с -prune-empty-dirs, но только обрезанные исключенные каталоги

    использование реальной памяти

    setuid (и другие) разрешения, потерянные при копировании / в других местах – что делать?

    Что сделало Simple Emacs Spreadsheet более удобным для новичков?

    Является ли libvirt dnsmasq доступным для сети, если я запускаю Fedora без брандмауэра?

    Тайм-аут соединений IPv6

    Не удается передать ssh-соединение с помощью rsync

    Linux и Unix - лучшая ОС в мире.