Подключаем Яндекс.Диск при помощи davfs2 & WEBDAV на UBUNTU 18.04 LTS сервере

Одним из способов выгрузки ежедневных (и не только) бекапов баз данных с серверов я использую смонтированный по webdav яндекс диск. Просто, надежно, и довольно быстро настраивается.




WebDAV (Web Distributed Authoring and Versioning) — это протокол для передачи данных и работы с ними, построенный поверх HTTP 1.1. Здесь следует заметить, что передача может быть как защищенной, так и незащищенной. В самом протоколе защищенность отсутствует, но она может быть добавлена через реализацию аутентификации на веб-сервере и шифрование посредством SSL, следовательно, в таком случае будет использоваться не HTTP, а HTTPS.

Изначально DAV разрабатывался для совместного создания и редактирования веб-страниц, но в процессе использования он нашел применение в качестве сетевой распределенной файловой системы, эффективной для работы в высоконагруженной среде и поддерживающей неустойчивое соединение. Таким образом, DAV подходит для управления файлами на веб-серверах, иными словами, реализации облачных хранилищ информации, где и был применен. С его помощью можно выполнять основные операции над файлами, содержащимися на сервере, проводить расширенные операции, как то: блокировка, получение метаданных, контроль версий и другие. Этот протокол стал заменой для старого доброго FTP, чье время подошло к концу.




Не стоит забывать, что при удалении по WebDAV файлы не попадают в корзину яндекс диска, а сразу удаляются с серверов Яндекса. Если вы удалили файлы по WebDAV, восстановить их уже не получится!




Подклюаем Яндекс.Диск как файловую систему




Установим пакет davfs2:




sudo apt install -y davfs2




После чего у нас выскакивает вопрос вида




Должны ли непривилегированные пользователи иметь возможность монтировать ресурсы WebDAV?




Смело выбираем NO




Монтируем WebDAV с помощью davfs2




Создадим точку монтирования:




 mkdir /mnt/yandex.disk 




Примонтируем наш диск, введя логин и пароль от Яндекса:




mount -t davfs https://webdav.yandex.ru /mnt/yandex.disk/




Вводим логин и пароль. После этого переходим в папку яндекс диска и проверяем, что он работает:




cd /mnt/yandex.disk/




Проверяем список файлов и папок:




ls -l




Проверить можно ещё одним способом:




Если видим наши папки и файлы из диска, то все подключено правильно.




df -h /mnt/yandex.disk/




Вывод должен быть примерно следующим:




Filesystem                Size  Used Avail Use% Mounted on
https://webdav.yandex.ru   84G   39G   46G  47% /mnt/yandex.disk




Автоматическое монтирования Яндекс.Диска




Для начала нам нужно добавить возможность авторизации:




sudo nano /etc/davfs2/secrets 




В конц файла вставляем следующую строку:




https://webdav.yandex.ru YOUR_username YOUR_password 




Где:




YOUR_username - ваш логин от яндекса 
YOUR_password -ваш пароль от яндекса




Сохраняем.




Открываем fstab:




sudo nano /etc/fstab 




И вставляем в конец файла следующее содержимое




https://webdav.yandex.ru   /mnt/yandex.disk   davfs   rw,users,_netdev    0   0




Перезагружаем машину командой reboot и снова проверяем, доступен ли наш раздел после перезагрузки.




df -h /mnt/yandex.disk/ 




Вывод должен быть примерно следующим:




Filesystem                Size  Used Avail Use% Mounted on
https://webdav.yandex.ru   84G   39G   46G  47% /mnt/yandex.disk 



2019-05-18T02:50:53
Настройка web сервера