Доступ к Google Drive через WebDAV в Windows
В Google Drive отсутствует встроенная поддержка протокола WebDAV. Реализовать данную возможность в Windows можно с помощью сторонних сервисов, одним из которых является DAV-pocket Lab.

Пошаговая инструкция по настройке сетевого диска с содержимым Google Drive для Windows под катом:

- Зарегистрироваться на сайте https://dav-pocket.appspot.com/signup (любые данные, можно отличные от гугловых)
- Кликнуть на «Authorize DAV-pocket service»
- «Предоставить доступ» сервису к диску гугла
- Сохранить страницу с результатом (нужна дальше):
Server Address: https://dav-pocket.appspot.com/docso
Login: login for this account.
Password: password for this account.
![]()
Поиск
- Search in:
posts
pages
comments
tags
- Приоритет сортировки:
Freshness & Relevance
Relevance
Freshness
Используем Google drive в linux через webdav и ocamlfuse

Компания Гугл бесплатно предоставляет любому желающему 15 Гигабайт дискового пространства. Файлы находящиеся там, вы можете открывать с любого устройства под любой операционной системой в любой точке мира.
Предлагаю вашему вниманию новую статью из цикла статей о Linux: Шифрование облачного диска Linux (файлов, папок)
WebDaV Google drive Linux
К сожалению в Google Drive нет встроенной поддержки технологии WebDAV. Я нашёл на просторах костыльный способ подключения по WebDaV. Для этого нужно зарегистрироваться по ссылке https://dav-pocket.appspot.com/signup . Сразу хочу предупредить, что в этом случае какой то сторонний сервис получит доступ к вашим данным в google drive, если вас это устраивает, то используйте.
Необходимо будет в нём подключить свой Гугл аккаунт. Для подключения Google Drive через WebDAV потребуются данные, выданные сервисом: имя аккаунта, пароль и адрес сервера. Это касаемо всех дистрибутивов, теперь же перейдём к конкретике на примере Ubuntu и Archlinux (и их производных).
Установим пакет davfs2 в Ubuntu и производные
sudo apt-get install davfs2 sudo dpkg-reconfigure davfs
После введения второй команды, система спросит разрешение на монтирования WebDaV раздела непривилегированным пользователям. Соглашаемся.
в Archlinux и производные
sudo pacman -S davfs2
Далее первой командой в домашней директории создаём папку в которую будем монтировать наш удалённый файловый хостинг. Второй командой создадим папку с файлом в который запишем данные полученные от стороннего сервиса, ссылку на который вы видели дюжиной строк выше.
mkdir ~/mnt && mkdir ~/mnt/GDrive
mkdir ~/.davfs2 && nano ~/.davfs2/secrets
В него вписываем следующие строки(разумеется внеся свои login и password и вместо tehnojam имя своего пользователя)
/home/tehnojam/mnt/GDrive login password
Если всё до текущего шага у вас таки получилось сделать, то остался последний штрих- добавление в fstab сведений для автомонтирования нашего новоявленного файлоохранилища:
sudo nano /etc/fstab
и в конце дописываем (вместо tehnojam не забываем вписать имя своего пользователя)
https://dav-pocket.appspot.com/docso /home/tehnojam/mnt/GDrive davfs user,rw,_netdev 0 0
Теперь всё должно автомонтироваться при перезагрузке.
Google drive в Ubuntu, Linux Mint, Archlinux, Manjaro используя google-drive-ocamlfuse
Реализация подключения Google Drive в linux реализуется пакетом google-drive-ocamlfuse. Так как установка и настройка подключения в различных дистрибутивах несколько разнится, то опишу это далее на конкретных дистрибутивах.
Так как Ubuntu и Linux Mint наиболее популярные дистрибутивы Linux, то далее будет пример подключения в этих дистрибутивах.
Для установки и настройки google-drive-ocamlfuse в Ubuntu и Linux Mint, нам необходимо подключить дополнительный репозиторий введя в терминале эти команды:
sudo add-apt-repository ppa:alessandro-strada/ppa sudo apt update sudo apt install google-drive-ocamlfuse
Для установки и настройки google-drive-ocamlfuse в Archlinux и Manjaro выполним в терминале:
#для пользователей yaourt ввести
yaourt -S google-drive-ocamlfuse
#для пользователей pacaur ввести
pacaur -S google-drive-ocamlfuse
Далее создаём в домашней директории папку, в которую будем осуществлять монтирование облака, выполняем это командой:
mkdir ~/GDisk google-drive-ocamlfuse ~/GDisk
После отработки последней команды откроется окно вашего дефолтного браузера

После введения своих данных от гугл аккаунта увидите что-то подобное:

Поздравляю, у вас в домашнем каталоге появился ваш Google Drive.
Linux mint Google Drive
Так как на моей машине сейчас стоит Linux Mint 19, то в завершение статьи о Google Drive приведу один понравившийся простой и безболезненный способ использования гуглового файлохранилища в данном дистрибутиве.
Достаточно просто введя одну команду
sudo apt-get install gnome-control-center
установить gnome-control-center , запустить его, и кликнуть по пункту «Online Account»

Там выберем аккаунт google, вводим свои логин и пароль и вуаля, Google Drive уже появился в Nautilus и при нажатии легко и непринужденно монтируется к вашей машине.
Наверное прочитав статью, вы в недоумении скажете: «И что? Где нормальные решения? Где повествования о Rclone или ODrive?» Безусловно есть куча различных мейнстрим клиентов на линукс, но о них расписаны уже тысячи страниц. Я же решил поделиться менее распространёнными способами интегрирования Google Drive в Linux.
Гик, хакинтошник, линуксоид, считаю себя flutter разработчиком. Завёл канал, в котором изначально хотел показывать как я с нуля и до бесконечности погрузился в дорвей тематику, а в итоге просто рассказываю о себе, своих успехах и неудачах в сайтах, приложениях, офлайн проектах. Добро пожаловать в
Подключение облачных хранилищ Яндекс.Диск, Google Диск и OneDrive в Linux CentOS

11.10.2019

VyacheslavK

CentOS, Linux

Один комментарий
В этой статье мы рассмотрим, как подключить бесплатные облачные хранилища Яндекс.Диск, Google Диск и OneDrive в Linux CentOS для использования их под бэкапы или простого обмена файла между разными операционными системами. Например, вы можете установить клиент облачного хранилища у себя в Windows, загрузить в него файлы и автоматически получить доступ к ним из Linux (или наоборот).
Зачастую владельцы или веб-разработчики какого-либо ресурса, не задумываются, что при нехватке места на виртуальной машине или контейнере, можно воспользоваться облачными хранилищами. В своей работе я часто рекомендую пользователям, подключать тот же Яндекс.Диск к себе на VDS, чтобы хранить какие-то не часто используемые материалы или бэкапить туда сайт и базы MySQL/MariaDB.

В данной статье мы рассмотрим подключение наиболее распространненных бесплатных хранилищ Яндекс.Диск, OneDrive и Google Диск (Google Drive) на виртуальную машину с предустановленной ОС CentOS 7.
Подключение Яндекс.Диска в Linux CentOS через WebDAV
Рассмотрим, как подключить облачное хранилище Яндекс.Диск в Linux с помощью протокола WebDAV.
WebDAV — набор расширений и дополнений к протоколу HTTP , поддерживающих совместную работу над редактированием файлов и управление файлами на удаленных серверах.
В этой инструкции мы подключим Яндекс.Диск как файловую систему к виртуальному серверу с Linux CentOS с помощью клиента davfs2. Покажем, как настроить автоматическое монтирование облачного хранилища Яндекс через автозагрузку.
Обычно пакет davfs2 уже должен быть установлен в системе, но может быть такое, что он не установился, поэтому делаем установку. Нужно подключить репозиторий Epel и установить сам пакет через yum:
yum install epel-release -y
yum install davfs2 -y
Проверяем, что модуль fuse на машине присутствует:
Вывод должен быть примерно таким:
[root@master ~]# ls -l /dev/fuse
crw-rw-rw- 1 root root 10, 229 Sep 2 09:54 /dev/fuse

Создаем отдельную директорию для нашего облачного хранилища:
После того, как все подготовительные работы выполнены, можем приступить к подключению Яндекс.Диск к серверу.
Монтируем Яндекс.Диск к созданной ранее директории:
mount -t davfs https://webdav.yandex.ru /mnt/yad/
После ввода команды, в консоли выйдут поля, где нужно будет указать ваш почтовый ящик на Яндексе и пароль от него
Username: Password:
У меня диск подключился без проблем:
[root@master ~]# df -h
Filesystem Size Used Avail Use% Mounted on /dev/vda2 80G 1.2G 79G 2% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 8.5M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/vda1 240M 109M 115M 49% /boot tmpfs 379M 0 379M 0% /run/user/0 https://webdav.yandex.ru 10G 39M 10G 1% /mnt/yad
По-умолчанию Яндекс предлагает всем своим пользователям бесплатно 10 Гб на облачном Яндекс.Диске.

И сразу можно убедиться, что содержимое Яндекс.Диска теперь доступно в Linux:
[root@master yad]# ls -la /mnt/yad/
total 39867 drwxr-xr-x 3 root root 392 Apr 5 2012 . drwx------ 2 root root 0 Sep 2 11:56 lost+found -rw-r--r-- 1 root root 1762478 Sep 2 11:54 Горы.jpg -rw-r--r-- 1 root root 1394575 Sep 2 11:54 Зима.jpg -rw-r--r-- 1 root root 1555830 Sep 2 11:54 Мишки.jpg -rw-r--r-- 1 root root 1080301 Sep 2 11:54 Море.jpg -rw-r--r-- 1 root root 1454228 Sep 2 11:54 Москва.jpg -rw-r--r-- 1 root root 2573704 Sep 2 11:54 Санкт-Петербург.jpg -rw-r--r-- 1 root root 31000079 Sep 2 11:54 Хлебные крошки.mp4
Создадим файл в подключеном WebDav каталоге файлы и проверим, что он появился в веб-версии Яндекс.Диска:
[root@master yad]# touch /mnt/yad/test.txt
[root@master yad]# ls -la /mnt/yad/
total 39867 drwxr-xr-x 3 root root 424 Apr 5 2012 . drwx------ 2 root root 0 Sep 2 11:56 lost+found -rw-r--r-- 1 root root 0 Sep 2 12:08 test.txt

Файл появился, наше подключение к облачному хранилищу Яндекс.Диск работает нормально, локальный файл автоматически синхронизируется с облаком.
Для упрощения монтирования, добавим его в rc.local, чтобы после рестарта сервера, хранилище Яндекс.Диск монтировалось автоматически.
Для этого, создаем файл /etc/davfs2/secrets:
touch /etc/davfs2/secrets
и добавляем туда путь до директории, в которую монтируем Яндекс.Диск и логин/пароль пользователя Яндекс:
/mnt/yad user password

В rc.local добавляем следующую строку:
mount -t davfs https://webdav.yandex.ru /mnt/yad/
Делаем рестарт Linux и проверяем доступность облачного диска:

У меня после перезагрузки сервера, хранилище примонтировалось автоматически. Но иногда файл rc.local не читается при запуске сервера, в таком случае для автозапуска сервиса rc-local выполните следующие команды:
chmod +x /etc/rc.d/rc.local
systemctl enable rc-local
На этом настройка и подключение Яндекс.Диск в Linux CentOS завершена.
P.S. Напоследок хотелось добавить, что если вы используете контейнер OpenVZ, модуль fuse по умолчанию отключен, со стороны ноды нужно подключить модуль к вашему контейнеру следующим образом:
modprobe fuse — добавление модуля на ноду
vzctl set 101 —save —devnodes «fuse:rw» (где 101 это ID нужного контейнера) — добавление модуля к нужному контейнеру
И после данных манипуляций делаем рестарт контейнера.
Подключение Google Диск (Google Drive) в качестве хранилища в Linux
Рассмотрим как подключить облачное хранилище Google Диск (Google Drive) в Linux CentOS 7. Установка его очень простая и быстрая.
Загружаем клиент Google Drive подключить командой:
wget -O drive https://drive.google.com/uc?id=0B3X9GlR6EmbnMHBMVWtKaEZXdDg
Перемещаем файл директорию /usr/sbin командой:
mv drive /usr/sbin/drive
Даем права на файл:
chmod +x /usr/sbin/drive
На этом установка клиента Google Drive завершена, нам остается лишь запустить его и пройти авторизацию:
[root@master ~]# mv drive /usr/sbin/drive
[root@master ~]# chmod +x /usr/sbin/drive
[root@master ~]# drive
Go to the following link in your browser: https://accounts.google.com/o/oauth2/auth?client_id=367116221053-7n0vf5akeru7on6o2fjinrecpdoe99eg.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive&state=state Enter verification code:
Нужно скопировать ссылку и открыть ее в брузере на ПК, после чего разрешить доступ к аккаунту.

После этого, вам будет предоставлена ссылка, которую нужно будет ввести в консоли Linux:

Google Drive подключен, однако он подключен не через WebDav (не поддерживается) , и вы не видите его как отдельную файловую систему и локальный каталог. Все обращения к хранилищу Google выполняются через клиент drive
Можно проверить какие файлы присутствуют на хранилище Google Диск командой drive list:
[root@master ~]# drive list
Id Title Size Created 1hG1VSNM67IOXlYCVQp9YqhJlFYU2g1qw test.txt 5.0 B 2019-09-02 17:01:13 1ih29E4B4piOho3oupLu2YXWfHZtIA330 DE30EF56-523D-4F90-. EE62DD392E89-1.mov 351.0 MB 2019-08-22 10:41:56 15qbRDBAZztBkN2rWCBhnYidMArTbaqW3 CALLU_8-7-2019_15-35-28_Private.mp3 83.2 KB 2019-07-08 15:35:40 1A4BUo_PTVH460SAAkbJKmgDlY1567Hno CALLU_8-7-2019_15-31-7_Private.mp3 1.3 MB 2019-07-08 15:34:10
Файлы выводятся в виде таблицы с четырьмя столбцами:
- Id – уникальный код файла
- Title – название файла
- Size – размер
- Created – дата создания
Для теста можем создать файл и передать его на g.drive:
touch drive.txt && drive upload —file drive.txt
Файл создался, и виден в консоли:
1KbdgtW3jJz46_zZ0Wv-ceBcUSSvEp5n- drive.txt 0.0 B 2019-09-02 17:49:30
Так же проверим, что файл появился в веб-интерфейсе Google Диск:

Как видим, файл на месте.
По-умолчанию Google предлагает бесплатные 15 Гб на своем Google Диск.
На этом подключение Google Диск к нашему серверу Linux окончено. В чем мне нравится Google Drive, так это в том, что не нужно выполнять какие-то дополнительные манипуляции на сервере, чтобы облачное хранилище монтировалось после перезагрузки сервера. Можно сколько угодно раз перезапускать ваш сервер, Google Drive будет подключаться автоматически. Но также есть свои минусы, например, на сервере мы не видим хранилище, как отдельную директорию и не можем управлять файлами на уровне файловой системы или привычными командами bash.
Подключение облачного хранилища OneDrive в Linux
OneDrive – облачное хранилище компании Microsoft. По умолчанию оно доступно для всех пользователей Windows 10 с привязанным аккаунтом (в хранилище OneDrive бесплатно предоставляется 5 Гб места). Наша задача подключить облачное хранилище OneDrive в CentOS 7. В процессе настройки я столкнулся с множеством проблем, которые путем научных экспериментов удалось решить. Вам же потребуется только ознакомиться с инструкцией и воспроизвести все действия у себя на сервере.
Для начала нам нужно зарегистрироваться по ссылке _https://onedrive.live.com
Процедуру регистрации я опущу, так как она не отличается от регистрации на любом другом ресурсе.
Теперь установим необходимые пакеты в Linux CentOS:
yum groupinstall ‘Development Tools’ -y
yum install libcurl-devel -y
yum install sqlite-devel -y
После этого установим язык программирования D(dlang), он потребуется для установки клиента OneDrive:
curl -fsS https://dlang.org/install.sh | bash -s dmd
Чтобы запустить среду D(dlang), введем команду:
source ~/dlang/dmd-2.088.0/activate — в вашем случае версия dmd может отличаться, указываете свою.
Запустив dlang, мы проведем установку самого клиента OneDrive:
сd /opt
git clone https://github.com/abraunegg/onedrive.git
cd onedrive
./configure
make clean; make;
sudo make install

Установка завершена, теперь нужно пройти активацию в веб-версии OneDrive.
Система вам выдаст ссылку, которую нужно ввести в браузере. В веб форме с запросом доступа нужно нажать кнопку Разрешить. После этого ссылка изменится уникальную с кодом, которую и нужно будет ввести в консоли Linux. У меня сформировалась такая ссылка https://login.microsoftonline.com/common/oauth2/nativeclient?code=M74bb67a8-f9a6-1a26-e345-c45a3324de49 :
(dmd-2.088.0)[root@master onedrive]# onedrive
Authorize this app visiting: https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=22c49a0d-d21c-4792-aed1-8f1623982546&scope=Files.ReadWrite%20Files.ReadWrite.all%20Sites.ReadWrite.All%20offline_access&response_type=code&redirect_uri=https://login.microsoftonline.com/common/oauth2/nativeclient Enter the response uri https://login.microsoftonline.com/common/oauth2/nativeclient?code=M74bb67a8-f9a6-1a26-e345-c45a3104de49
После подтверждения ссылки, я могу выполнить синхронизацию с облачным хранилищем OneDrive:
(dmd-2.088.0)[root@master onedrive]# onedrive —synchronize
Initializing the Synchronization Engine . Syncing changes from OneDrive . Processing 6 changes Creating directory: Pictures Creating directory: Documents Downloading file Getting started with OneDrive.pdf . done. Creating directory: backup Downloading file backup/test.txt . done.
По умолчанию, у меня создалась директория /root/OneDrive, в которой появились все каталоги моего облачного хранилища.
(dmd-2.088.0)[root@master OneDrive]# ls -la /root/OneDrive/
total 392 drwxr-xr-x 5 root root 94 Sep 3 11:15 . dr-xr-x--- 10 root root 267 Sep 3 11:15 .. drwxr-xr-x 2 root root 22 Sep 3 11:15 backup drwxr-xr-x 2 root root 6 Sep 3 11:15 Documents -rw-r--r-- 1 root root 398083 Sep 3 09:38 Getting started with OneDrive.pdf drwxr-xr-x 2 root root 6 Sep 3 11:15 Pictures
Для теста я создал файл test2.txt и выполнил синхронизацию:
[root@master backup]# onedrive —synchronize
Initializing the Synchronization Engine . Syncing changes from OneDrive . Uploading new file ./backup/test2.txt . done.
Файл закачался в облако Microsoft:

Чтобы изменить директорию по умолчанию, нужно в конфигурационном файле изменить параметр sync_dir и после этого запустить команду:
onedrive —synchronize —resync
Initializing the Synchronization Engine . Syncing changes from OneDrive . Processing 7 changes
После перезагрузки сервера, клиент OneDrive запускает автоматически и не нужно повторно проходить авторизацию.
На этом настройка OneDrive на сервере с CentOS 7 окончена, надеюсь, что информация будет для многих полезна. В следующей статье мы рассмотрим, как использовать облачные хранилища для бэкапа данных с Linux сервера.
Предыдущая статья Следующая статья
Как подключить Google Drive по WebDav?
Появилась задача подключить Google Drive к винде как сетевой диск с помощью WebDav. Но при подключении требуется имя хоста. Это имя есть для яндекса, box или OneDrive. Но к сожалению для Google Drive я его не нашел. Может кто ни будь его знает или скинет инструкцию по его подключению?
- Вопрос задан более двух лет назад
- 8318 просмотров
1 комментарий
Простой 1 комментарий