Как настроить WebDAV-сервер в ReadyNAS для удалённого доступа к файлам

Подключение сетевого диска с проверкой и повтором

Чтобы сделать более надёжное решение, использую cmd/bat файл с проверкой результата и повтором попытки:


@echo off if exist y:* echo Already connected. & exit /b 0 :connect net use y: https://webdav.yandex.ru password /user:nhutils@yandex.ru if errorlevel 1 ping 127.0.0.1 -n 60 > nul & goto connect

</pre>

В случае ошибки NET USE попытка подключения повторяется через 1 минуту. Задержка делается с помощью ping, подробнее см. Как сделать задержку в командном файле.

Этот командный файл можно запускать вручную или через автозагрузку.

Чтобы не мешало чёрное окно bat файла, можно спрятать его путём запуска через wsh скрипт, см. Скрыть консольное окно.

WebDAV в FAR Manager

far-manager-logo.png

Работать с файловым хранилищем по WebDAV можно и без подключения сетевого диска, если использовать плагин NetBox в Far Manager, при этом файлы будут доступны в самом Far Manager, но недоступны в командной строке и в других программах, например, в проводнике Windows.

Файлы для скачивания

Командные файлы подключения по WebDAV

Все скрипты и командные файлы

Производительность wevdav хранилищ

Это очень интересный вопрос для резервного копирования, потому что нам надо понимать, сколько времени будет занимать копирование файла резервной копии на сервер по webdav, ведь размер такого файла может быть и 100МБайт, и 1 ГБайт и больше.

Следующий тест показывает время выгрузки файла 188 МБ на Яндекс Диск по webdav. Подключение к интернету 100 Мбит/с, поэтому на выгрузку существенно не влияет. Для регистрации времени начала и окончания копирования используется программа nhts.

C:UsersusernameDocuments>dir *.zip 11.09.2015  15:55       197 858 220 backup-20150911.zip  C:UsersusernameDocuments>nhts HH:mm:ss 'Запуск' & xcopy backup-2015091 1.zip y:backup /Y /Z /V /J & nhts HH:mm:ss 'Завершено' 15:58:05 Запуск C:backup-20150911.zip Скопировано файлов: 1. 15:58:43 Завершено

В итоге, файл 188 МБ был скопирован за 38 секунд, то есть скорость выгрузки составила 4,9 МБ/с или 40Мбит/с – хороший результат для резервного копирования. Соответственно, файл 1 ГБ будет загружен на сервер примерно за 3,5 минуты.

Теперь такой же тест для Box (он подключен к X:):

C:UsersusernameDocuments>nhts HH:mm:ss 'Запуск' & xcopy backup-2015091 1.zip x:backup /Y /Z /V /J & nhts HH:mm:ss 'Завершено' 16:09:57 Запуск C:backup-20150911.zip Скопировано файлов: 1. 16:11:49 Завершено

Box работает помедленнее – время копирования того же файла составило 112 секунд, и, соответственно, скорость копирования составила 1,7 МБ/с или 13,4 Мбит/с. При такой скорости время копирования 1ГБ файла составит больше 10 минут. Сам Box пишет, что для business и enterprise аккаунтов есть какая-то оптимизация для повышения скорости копирования на сервер, см. How can I optimize my upload speeds?

Понятно, что скорость копирования может меняться в зависимости от загрузки каналов связи или серверов, но видно, что Яндес Диск быстрее, и с учетом ограничения на размер файла в 250 МБ в Box предпочтительнее для резервного копирования использовать бесплатный Яндекс Диск, чем бесплатный аккаунт Box.

Команды

WebDAV расширяет HTTP следующими командами:

  • PROPFIND — Получение свойств объекта на сервере в формате XML. Так же можно получать структуру репозитория (дерево каталогов).
  • PROPPATCH — Изменение свойств за одну транзакцию.
  • MKCOL — Создать коллекцию объектов (каталог в случае доступа к файлам)
  • COPY — Копирование из одного URI в другой
  • MOVE — То же что и предыдущий, только перемещение
  • LOCK — Поставить блокировку на объекте. WebDAV поддерживает эксклюзивные и общие (shared) блокировки
  • UNLOCK — Снять блокировку с ресурса

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий