Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
wiki:davfs2 [2012/08/23 09:21] [fstab] |
wiki:davfs2 [2019/04/28 00:05] (текущий) [Настройка] |
||
---|---|---|---|
Строка 10: | Строка 10: | ||
* Присутствует доля отказов данного функционала (см. [[lpbugs>ubuntu/+source/gvfs/+bug/994006|can't connect to webdav shares]]). | * Присутствует доля отказов данного функционала (см. [[lpbugs>ubuntu/+source/gvfs/+bug/994006|can't connect to webdav shares]]). | ||
- | Альтернативой использованию пакета <<**GVFS**>> является утилита поставляемая в пакете <<**davfs2**>> (см. [[wp>davfs2]]). Эта утилита показывает большую отказоустойчивость и позволяет монтировать облачный диск подобно монтированию обычного носителя данных -- в постоянную локацию, что делает такой диск доступный для любой программы имеющей доступ к ФС ОС. В свою очередь, такой метод тоже имеет свой недостаток -- сложность настройки. | + | Альтернативой использованию пакета <<**GVFS**>> является утилита поставляемая в пакете <<**davfs2**>> (см. [[wp>davfs2]]). Эта утилита позволяет монтировать облачный диск подобно монтированию обычного носителя данных -- в постоянную локацию, что делает такой диск доступный для любой программы имеющей доступ к ФС ОС. В свою очередь, такой метод тоже имеет свой недостатки: |
+ | * Сложность настройки. | ||
+ | * Файловые менеджеры считают папки примонтированные с помощью <<**davfs2**>> локальными и будут пытаться получить информацию и сгенерировать эскизы для медиа-файлов, что требует скачивания этих файлов. А это требует времени в течении которого файловый менеджер будет недоступен, а интернет-соединение загружено передачей данных. | ||
====== Установка ====== | ====== Установка ====== | ||
Строка 18: | Строка 20: | ||
По завершении установки следует выполнить переконфигурирование пакета, например, командой | По завершении установки следует выполнить переконфигурирование пакета, например, командой | ||
<code bash>sudo dpkg-reconfigure davfs2</code> | <code bash>sudo dpkg-reconfigure davfs2</code> | ||
- | выбрав пункт <<Да>>, для разрешения монтирования облачных хранилищ непривилегированным пользователям ОС. Заместо этого можно просто выполнить команду | + | выбрав пункт <<Да>>, для разрешения монтирования облачных хранилищ непривилегированным пользователям ОС. Вместо этого можно просто выполнить команду |
<code bash>sudo chmod 4755 /usr/sbin/mount.davfs</code> | <code bash>sudo chmod 4755 /usr/sbin/mount.davfs</code> | ||
Строка 31: | Строка 33: | ||
если для создания папки требуются административные привилегии. Где <<$PathToMountPoint>> следует заменить допустимым именем в ФС ОС <<**Ubuntu**>>. Например, <<$PathToMountPoint>> может принимать следующие значения | если для создания папки требуются административные привилегии. Где <<$PathToMountPoint>> следует заменить допустимым именем в ФС ОС <<**Ubuntu**>>. Например, <<$PathToMountPoint>> может принимать следующие значения | ||
* <<$HOME/CloudDisk>> -- точка монтирования размещена в домашней папке пользователя и под-папке <<CloudDisk>>. | * <<$HOME/CloudDisk>> -- точка монтирования размещена в домашней папке пользователя и под-папке <<CloudDisk>>. | ||
- | * <</media/CloudDisk>> -- точка монтирования размещена в системной папке <</media>> и под-папке <<CloudDisk>>. Для создания требуются административные привилегии. | + | * <</media/CloudDisk>> -- точка монтирования размещена в системной папке <</media>> и под-папке <<CloudDisk>>. Для создания требуются административные привилегии. Рекомендуется создавать точку монтирования в папке <</media>>, потому что при этом облачное хранилище будет доступно к монтированию\размонтированию через Nautilus. |
Во избежание конфликтов, такую папку (естественно с другим именем) следует создавать для каждого удаленного облачного диска, который планируется использовать. | Во избежание конфликтов, такую папку (естественно с другим именем) следует создавать для каждого удаленного облачного диска, который планируется использовать. | ||
- | ===== Настройка монтирования ===== | ||
- | ==== fstab ==== | ||
- | Сопоставление адреса облачного диска и точки его монтирования производится за счет информации в файле <</etc/fstab>> (см. [[wiki:fstab|fstab]], [[wpru>fstab]]). В этот файл следует внести информацию о параметрах монтирования для каждого облачного диска. Для редактирования этого файла можно выполнить команду (требуются административные привилегии) | ||
- | <code bash>sudo gedit /etc/fstab</code> | ||
- | |||
- | |||
- | Файл <</etc/fstab>> следует дополнить строкой (дописать в самом конце) | ||
- | <code bash>$WebDAV_Address $PathToMountPoint davfs user,rw,noauto 0 0</code> | ||
- | где <<$WebDAV_Address>> надо обязательно заменить на веб-адрес поставщика услуги сетевого облачного диска, а <<$PathToMountPoint>> обязательно заменить на абсолютный путь к точке монтирования (без переменных среды, начинающихся с символа <<$>>, путь должен начинаться с символа <</>>). Например, для распространенных поставщиков облачных дисков (и соответственно подобранного названия точки монтирования) эта строка описана ниже. | ||
- | * <<**Яндекс Диск**>> (см. [[http://help.yandex.ru/disk/?id=1124655|Работа через WebDAV]]). Строка в <</etc/fstab>> может иметь вид | ||
- | <code bash>https://webdav.yandex.ru:443 /media/Yandex davfs user,rw,noauto 0 0</code> подробнее о подключении к Яндекс.Диск через WebDav можно почитать в [[wiki:яндекс_диск|этой статье]]. | ||
- | * <<**4shared**>> (см. [[http://help.4shared.com/index.php/Main_Page#What_is_WebDav_and_how_to_use_it|What is WebDav and how to use it ]]). Строка в <</etc/fstab>> может иметь вид | ||
- | <code bash>https://webdav.4shared.com/ /media/4shared davfs user,rw,noauto 0 0</code> | ||
- | * <<**OwnCube**>>. Строка в <</etc/fstab>> может иметь вид | ||
- | <code bash>https://owncube.com/files/webdav.php /media/OwnCube davfs user,rw,noauto 0 0</code> | ||
- | * <<**IDriveSync**>> (см. [[https://www.idrivesync.com/webdav|IDriveSync join hands with WebDAV]]). Строка в <</etc/fstab>> может иметь вид | ||
- | <code bash>https://dav.idrivesync.com/ /media/IDriveSync davfs user,rw,noauto 0 0</code> | ||
- | |||
- | <note important>При ручном наборе этих строк обратите внимание, на то, что многие поставщики облачных дисков используют протокол HTTPS вместо HTTP. Опция noauto обязательна, так как в противном случае система будет пытаться подключить диск до поднятия сетевого интерфейса.</note> | ||
- | ==== Автоматическое монтирование ==== | ||
- | Опция ''noauto'' не позволяет диску примонтироваться автоматически при старте системы. Для автоматического монтирования необходимо создать подобный скрипт<code bash>#!/bin/bash | ||
- | sleep 120 && mount https://webdav.yandex.ru</code> и добавить его в автозагрузку. | ||
- | {{ :wiki:яндекс_диск:яндекс_диск_nautilus.png?nolink&500 }} | ||
===== Настройка учетных данных ===== | ===== Настройка учетных данных ===== | ||
Для того, что бы не было необходимости вводить пароль при каждом монтировании, следует сообщить имя пользователя удаленного облачного диска и его пароль утилите <<**davfs2**>>. Для этого необходимо редактировать файл <</etc/davfs2/secrets>> или <<$HOME/.davfs2/secrets>>. | Для того, что бы не было необходимости вводить пароль при каждом монтировании, следует сообщить имя пользователя удаленного облачного диска и его пароль утилите <<**davfs2**>>. Для этого необходимо редактировать файл <</etc/davfs2/secrets>> или <<$HOME/.davfs2/secrets>>. | ||
Строка 69: | Строка 48: | ||
<code bash>xdg-open $HOME/.davfs2/secrets</code> | <code bash>xdg-open $HOME/.davfs2/secrets</code> | ||
необходимо ввести строку | необходимо ввести строку | ||
+ | <code bash>$PathToMountPoint $USER $PASSWORD</code> | ||
+ | с указанием абсолютного пути точки монтирования вместо <<$PathToMountPoint>> (так же как указано в файле <</etc/fstab>>), имени пользователя у поставщика облачного диска вместо <<$USER>> и его пароля вместо <<$PASSWORD>>, например | ||
+ | <code bash>/mnt/cloud MyName 12345</code> | ||
+ | Можно указывать адрес облачного диска, а не путь монтирования | ||
<code bash>$WebDAV_Address $USER $PASSWORD</code> | <code bash>$WebDAV_Address $USER $PASSWORD</code> | ||
- | где параметр <<$WebDAV_Address>> аналогичен описанному в файле <</etc/fstab>>, а <<$USER>> и <<$PASSWORD>> данные аутентификации пользователя у поставщика сервиса облачного диска. | + | где параметр <<$WebDAV_Address>> аналогичен описанному в файле <</etc/fstab>>, например, |
+ | <code bash>https://example.com/webdav.php MyName 12345</code> | ||
+ | |||
+ | Имеются проблемы с символами $^#& и пробелами в паролях. Следует использовать Escape-символы или окружать пароль скобками %%" "%%. Например пароль <<qwe # rty>> можно записать как | ||
+ | <code>"qwe # rty"</code> | ||
+ | или | ||
+ | <code>qwe\ \#\ rty</code> | ||
Ввиду наличия секретной информации в этом файле, обязательно следует запретить другим пользователям системы производить его чтение, например, командой | Ввиду наличия секретной информации в этом файле, обязательно следует запретить другим пользователям системы производить его чтение, например, командой | ||
<code bash>chmod 600 $HOME/.davfs2/secrets</code> | <code bash>chmod 600 $HOME/.davfs2/secrets</code> | ||
- | ===== Проверка монтирования ===== | + | ===== Настройка монтирования ===== |
+ | ==== fstab ==== | ||
+ | Сопоставление адреса облачного диска и точки его монтирования производится за счет информации в файле <</etc/fstab>> (см. [[wiki:fstab|fstab]], [[wpru>fstab]]). В этот файл следует внести информацию о параметрах монтирования для каждого облачного диска. Для редактирования этого файла можно выполнить команду (требуются административные привилегии) | ||
+ | <code bash>sudo gedit /etc/fstab</code> | ||
+ | |||
+ | |||
+ | Файл <</etc/fstab>> следует дополнить строкой (дописать в самом конце) | ||
+ | <code bash>$WebDAV_Address $PathToMountPoint davfs user,rw,noauto 0 0</code> | ||
+ | или | ||
+ | <code bash>$WebDAV_Address $PathToMountPoint davfs user,rw,_netdev 0 0</code> | ||
+ | где <<$WebDAV_Address>> надо обязательно заменить на веб-адрес поставщика услуги сетевого облачного диска, а <<$PathToMountPoint>> обязательно заменить на абсолютный путь к точке монтирования (без переменных среды, начинающихся с символа <<$>>, путь должен начинаться с символа <</>>). Опция <<noauto>> указывает, что монтирование производится вручную (см. ниже), в то время как альтернативная ей опция <<_netdev>> -- что монтирование будет произведено автоматически при наличии подключенного сетевого интерфейса (см. [[wiki:fstab|fstab]]). | ||
+ | <note important>Наличие опции **noauto** или **_netdev** обязательно, в противном случае считается, что указана опция **auto** и система будет пытаться подключить сетевой диск до поднятия самого сетевого интерфейса</note> | ||
+ | Например, для распространенных поставщиков облачных дисков (и соответственно подобранного названия точки монтирования) эта строка описана ниже. | ||
+ | * <<**Яндекс Диск**>> (см. [[http://help.yandex.ru/disk/?id=1124655|Работа через WebDAV]]). Строка в <</etc/fstab>> может иметь вид<code bash>https://webdav.yandex.ru:443 /media/Yandex davfs user,rw,noauto 0 0</code> В этом примере явно указан порт для подключения. Это не обязательно, если поставщик облачного диска использует стандартные порты: 80 для HTTP и 443 для HTTPS. | ||
+ | * <<**4shared**>> (см. [[http://help.4shared.com/index.php/Main_Page#What_is_WebDav_and_how_to_use_it|What is WebDav and how to use it ]]). Строка в <</etc/fstab>> может иметь вид<code bash>https://webdav.4shared.com/ /media/4shared davfs user,rw,noauto 0 0</code> | ||
+ | * <<**IDriveSync**>> (см. [[https://www.idrivesync.com/webdav|IDriveSync join hands with WebDAV]]). Строка в <</etc/fstab>> может иметь вид<code bash>https://dav.idrivesync.com/ /media/IDriveSync davfs user,rw,noauto 0 0</code> | ||
+ | * Облачные диски на основе <<**ownCloud**>> (см. [[owncloud|ownCloud]], [[wp>OwnCloud]]). Здесь есть особенность, т.к. сервис <<**ownCloud**>> может работать на вашем сервере, тогда адрес необходимо прописывать следующим образом <code>http://ваш_сервер.ru/owncloud/files/webdav.php</code> если вы пользуетесь общим сервером <<**ownCloud**>>, то строка в <</etc/fstab>> примет вид:<code bash>http://getfreecloud.com/files/webdav.php /media/ownСloud davfs user,rw,noauto 0 0</code> Еще один поставщик облачного диска, работающего на основе <<**ownCloud**>>, это <<**OwnCube**>>. Строка в <</etc/fstab>> может иметь вид<code bash>https://owncube.com/files/webdav.php /media/OwnCube davfs user,rw,noauto 0 0</code> | ||
+ | |||
+ | <note important>При ручном наборе этих строк обратите внимание, на то, что многие поставщики облачных дисков используют протокол HTTPS вместо HTTP.</note> | ||
+ | ==== Проверка монтирования ==== | ||
После завершения данных манипуляций целесообразно проверить монтирование, выполнив команду <<mount>> | После завершения данных манипуляций целесообразно проверить монтирование, выполнив команду <<mount>> | ||
<code bash>mount $PathToMountPoint</code> | <code bash>mount $PathToMountPoint</code> | ||
- | где <<$PathToMountPoint>> точка монтирования облачного диска описанная в <</etc/fstab>>. | + | где <<$PathToMountPoint>> точка монтирования облачного диска описанная в <</etc/fstab>>. Или |
+ | <code bash>mount $WebDAV_Address</code> | ||
+ | где $WebDAV_Address адрес для доступа к облачному диску, прописанный в <</etc/fstab>>. | ||
Отмонтировать такой диск можно командой <<umount>> | Отмонтировать такой диск можно командой <<umount>> | ||
- | <code bash> umount $PathToMountPoint</code> | + | <code bash>umount $PathToMountPoint</code> |
+ | или | ||
+ | <code bash>umount $WebDAV_Address</code> | ||
+ | ===== Монтирование через Nautilus ===== | ||
+ | Если вы создали точку монтирования в папке <</media>>, то на левой панели файлового менеджера [[wiki:nautilus|Nautilus]] будет доступна кнопка, по нажатию на которой будет происходить монтирование\размонтирование, как с обычной флешкой. | ||
+ | ===== Автоматическое монтирование ===== | ||
+ | Опция <<noauto>> не позволяет диску примонтироваться автоматически при старте системы. Для автоматического монтирования необходимо воспользоваться опцией <<_netdev>> (см. [[#fstab|fstab]]), в таком случае попытка примонтировать диск будет произведена при загрузке системы, до входа под конкретным пользователем. Для этого, учетные данные доступа к облачному диску должны хранится в <</etc/davfs2/secrets>> (см. [[#Настройка учетных данных]]). Такой облачный сетевой диск будет монтироваться для всех пользователей ОС. | ||
+ | Если же диск должен монтироваться только для конкретного пользователя, то наряду с указанием опции <<noauto>> в <</etc/fstab>> следует создать подобный скрипт <code bash>#!/bin/bash | ||
+ | sleep 120 && mount https://webdav.yandex.ru</code> и добавить его в автозагрузку этого пользователя. | ||
+ | {{ :wiki:яндекс_диск:яндекс_диск_nautilus.png?nolink&500 }} | ||
+ | |||
+ | |||
+ | ====== Резервное копирование ====== | ||
+ | ===== Бекап с помощью Déjà Dup ===== | ||
+ | Особенность программы [[Déjà Dup]] заключается в том, что она поддерживает работу по webdav. Минусы данного способа резервного копирования - файлы на сервере невозможно прочесть без данной программы и копировать можно только каталоги своего пользователя | ||
+ | {{ :wiki:яндекс_диск:яндекс_диск_deja_dup.png?nolink&500 }} | ||
+ | Для работы необходимо: | ||
+ | ** настроить папки для резервного копирования (при необходимости указать папки-исключения); | ||
+ | ** настроить расписание автоматического резервного копирования (если необходимо); | ||
+ | ** указать носитель | ||
+ | .. Местоположение резервной копии: WebDav | ||
+ | .. Сервер: webdav.yandex.ru | ||
+ | .. Использовать защищенное соединение (HTTPS) | ||
+ | .. Порт: 443 | ||
+ | .. Папка: указать папку на Яндекс.Диск (например: /backup) | ||
+ | .. Имя пользователя: Имя пользователя Яндекс.Диск без @yandex.ru | ||
+ | ** для запуска необходимо нажать "Создать резервную копию" | ||
+ | ===== Бэкап с помощью rsync(терминал)===== | ||
+ | Способ, использующий для [[backup|резервного копирования]] программу ''rsync'' позволяет сделать копию любого файла на вашем компьютере, в том числе файлов настроек и системных файлов. Для настройки необходимо: | ||
+ | ** Создать скрипт, выполняющий резервное копирование. Файл в любом удобном для вас месте((рекомендую хранить все свои скрипты в папке ~/bin, она не удалится при переустановке системы)) со следующим содержимым: | ||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | mount -t davfs https://webdav.yandex.ru | ||
+ | notify-send "Запущено резервное копирование, дождитесь сообщения о завершении" -i deja-dup | ||
+ | rsync -qralo --delete-before --exclude-from=/home/<имя_пользователя>/bin/backup.conf / /media/Яндекс.Диск/backup | ||
+ | umount https://webdav.yandex.ru | ||
+ | notify-send "Резервное копирование окончено" -i deja-dup | ||
+ | </code> | ||
+ | ** данный скрипт использует файл ~/backup.conf добавляя в исключения все записанные в нем каталоги. Файл ~/bin/backup.conf должен иметь вид: | ||
+ | <code bash> | ||
+ | /media | ||
+ | /dev | ||
+ | /mnt | ||
+ | /tmp | ||
+ | /proc | ||
+ | /sys | ||
+ | /var/backups | ||
+ | /var/cache | ||
+ | /usr/src | ||
+ | |||
+ | /home/"user_name1"/Загрузки | ||
+ | /home/"user_name1"/Видео | ||
+ | |||
+ | /home/"user_name2"/Музыка | ||
+ | </code> | ||
+ | <note important>Данный скрипт будет пытаться сделать резервную копию абсолютно всей файловой системы, поэтому, ввиду ограниченности пространства сетевого хранилища, уделите особое внимание указанию папок-исключений.</note> | ||
+ | <note warning>На момент написания статьи наблюдаются проблемы в скорости работы rsync при обращении к Яндекс.Диск, ориентировочно из-за медленного расчета контрольной суммы на стороне сервера, поэтому делать резервные копии большого объема пока нежелательно.</note> | ||
+ | ** Добавить созданный скрипт на ежемесячное выполнение в [[cron]] от [[пользователи_и_группы|пользователя]] root | ||
+ | <code bash> | ||
+ | sudo ln -s ~/bin/backup.sh /etc/cron.monthly/backup.sh</code> | ||
+ | ====== Шифрование ====== | ||
+ | FIXME | ||
+ | ====== Проблемы ====== | ||
+ | <note important>Если у вас возникли малейшие проблемы при выполнении какой либо части из данной инструкции, не поленитесь, сообщите в [[http://forum.ubuntu.ru/index.php?topic=200180.0|теме обсуждения]], тем самым вы поможете себе- вам подскажут как действовать и другим- авторы поправят статью в соответствии с вашими замечаниями. Если нашли в статье неточность или знаете сами как решить проблему- не стесняйтесь, входите в ВИКИ под своим логином и паролем от форума и смело правьте статью.</note> | ||
+ | |||
+ | * Существенная проблема данного подхода к монтированию облачных дисков состоит в том, что файловые менеджеры (<<**Nautilus**>>, <<**Dolphin**>> и т.п.) считают такие файлы и папки локальными, как результат -- пытаются сгенерировать для них эскизы и получить другую медиа-информацию, что приводит к скачиванию этих файлов, а это может затянуться на некоторое время, в течение которого файловый менеджер будет недоступен, а канал связи загружен. Решить эту проблему можно отключив все эскизы в Вашем файловом менеджере или использовать другой файловый менеджер, например <<**MC**>> | ||
====== Ссылки ====== | ====== Ссылки ====== | ||
Строка 89: | Строка 164: | ||
* Отчет о программном сбое утилиты <<**GVFS**>> [[lpbugs>ubuntu/+source/gvfs/+bug/994006|can't connect to webdav shares]] | * Отчет о программном сбое утилиты <<**GVFS**>> [[lpbugs>ubuntu/+source/gvfs/+bug/994006|can't connect to webdav shares]] | ||
* Описание файла <</etc/fstab>> на данном ресурсе [[wiki:fstab|fstab]] и на Wikipedia [[wpru>fstab]] | * Описание файла <</etc/fstab>> на данном ресурсе [[wiki:fstab|fstab]] и на Wikipedia [[wpru>fstab]] | ||
- | * Инструкция по подключению к облачному хранилищу <<**Яндекс Диск**>> по <<**WebDAV**>> [[http://help.yandex.ru/disk/?id=1124655|Работа через WebDAV]] | ||
* Инструкция по подключению к облачному хранилищу <<**4shared**>> по <<**WebDAV**>> [[http://help.4shared.com/index.php/Main_Page#What_is_WebDav_and_how_to_use_it|What is WebDav and how to use it ]] | * Инструкция по подключению к облачному хранилищу <<**4shared**>> по <<**WebDAV**>> [[http://help.4shared.com/index.php/Main_Page#What_is_WebDav_and_how_to_use_it|What is WebDav and how to use it ]] | ||
* Инструкция по подключению к облачному хранилищу <<**IDriveSync**>> по <<**WebDAV**>> [[https://www.idrivesync.com/webdav|IDriveSync join hands with WebDAV]] | * Инструкция по подключению к облачному хранилищу <<**IDriveSync**>> по <<**WebDAV**>> [[https://www.idrivesync.com/webdav|IDriveSync join hands with WebDAV]] | ||
+ | * [[http://forum.ubuntu.ru/index.php?topic=200180.0|forum.ubuntu.ru]]-- Обсуждение статьи на форуме | ||
+ | * [[http://disk.yandex.ru/|Яндекс.Диск]]-- страница проекта | ||
+ | * [[http://ubuntovod.ru/instructions/yandeks-disk-deja-dup.html|Бекап на Яндекс.Диск с Déjà Dup]]-- источник | ||
+ | * [[http://help.yandex.ru/disk/cli-clients.xml|Консольный клиент для Linux yandex-disk]] | ||
+ | * <<**[[http://noedler.de/projekte/wdfs/|wdfs]]**>> - утилита для монтирования <<**WebDAV**>> через <<**FUSE**>> (без прав суперпользователя). Можно найти в PPA на [[https://launchpad.net/+search?field.text=wdfs&field.actions.search=Search|launchpad.net]], или легко скомпилировать с помощью утилиты <<**checkinstall**>> | ||
- | {{tag>davfs2 webdav}} | + | {{tag>davfs2 webdav Яндекс.Диск резервное_копирование backup монтирование fixme}} |