RSync к WebDAV монтируется очень медленно

11

У меня есть подключенное хранилище WebDAV, с которым я играю, чтобы попытаться собрать свою собственную установку псевдо-DropBox. Тем не менее, похоже очень медленно загружать большие файлы (мой график пропускной способности немного подходит, а затем просто останавливается на длительные периоды времени).

Кто-нибудь пробовал это? Мне интересно, если способ, которым это установлено, делает rsync думаете, что это локальный диск или что-то в этом роде, и поэтому может быть болтливее, чем если бы он знал, что это подключенный сетевой диск?

Я синхронизируюсь с помощью следующей команды:

rsync -rv /source/directory/ /mounted/webdav/directory/

Это выполняется с использованием MacOS 10.6, а WebDAV монтируется с использованием собственного механизма монтирования

AlexC
источник

Ответы:

12

Проверьте страницу руководства для

  • --size-only потому что большинство реализаций webdav не принимают настройку времени изменения

  • --no-whole-file сообщить rsync, что он обрабатывает удаленную файловую систему

  • --inplace наличие rsync, заменяющего файлы напрямую, вместо загрузки и замены

Кстати, я использую другой слой Encfs для шифрования файлов в WebDAV, и я очень доволен производительностью.

ribx
источник
Как --inplace Помогите? В ручном режиме: эта опция полезна для передачи больших файлов с блочными изменениями или добавленными данными, а также в системах, которые связанный диск, не связанный с сетью , Это также может помочь избежать отклонения снимка файловой системы при копировании от записи всего содержимого файла, в котором есть только незначительные изменения.
msa7
Моя команда sudo mount -t davfs https://webdav.yandex.com/ ~/mnt/yd; rsync -avrc --size-only --no-whole-file /home/msa/xranitel/webdav /home/msa/mnt/webdav
msa7
0

Я пробовал это на сервере, к которому у меня есть доступ как к rsync, так и к WebDAV, чтобы увидеть разницу, а метод rsync через WebDAV был намного медленнее. Должно быть просто протокол. Я не думаю, что Rsync локально chattier чем по сети.

fideli
источник
0

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

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

bdecaf
источник
0

Я обнаружил, что подключение Mac OSX к webdav ненадежно (10.11.6 El Capitan). Если я использую rsync, tar, cp или любой другой инструмент, некоторые файлы будут повреждены. Я могу повторять и повторять, но разные файлы каждый раз портятся. Затем я монтирую ту же самую папку webdav в виртуальной машине Windows внутри Mac (та же сеть, то же оборудование, все то же самое, за исключением того, что теперь это виртуальная машина Windows вместо Mac OSX), и затем все работает нормально.

Edward Ned Harvey
источник