Autofs

Материал из Linux Wiki
Перейти к навигацииПерейти к поиску

Настройка autofs в примерах

Краткое описание

autofs - система управления автоматическим монтированием (и отмонтированием).

Всё просто: если обратиться к каталогу - он монтируется, если он не занят какое-то время - отмонтируется. В отличие от записи в файле fstab (или ручного монтирования) её очень удобно использовать в случае если ресурс может быть доступен не постоянно - в основном это сетевые файловые системы. Возможно применение autofs для автомонтирования сменных носителей, но как мне кажется, для этого есть более пододящие инструменты.

Сия писанина не ставит задачу осветить полностью все возможности и настройки autofs ( для этого есть man, а также куча информации в сети ), а просто обобщает некоторый полученный опыт.

Настройки

Общие настройки

Файл /etc/auto.master - у меня в нем содержится список всех монтируемых систем с соответствующими корневыми точками монтирования и файлами опций для каждой системы ( можно и иначе, но мне удобно именно так ):

+auto.master
/mnt/webdav /etc/auto.davfs     uid=1000,gid=1002,--timeout=30,--ghost
/mnt/nfs /etc/auto.nfs4        uid=1000,gid=1002,--timeout=600,--ghost
/mnt/ssh /etc/auto.sshfs        uid=1000,gid=1002,--timeout=30,--ghost

Поле 1 - каталог, в котором будут динамически создаваться подкаталоги для монтирования ресурсов, описанных в файлах из поля 2. С опциями всё прозрачно - пользователь/группа, которому будут принадлежать примонтированные ресурсы, таймаут, по истечении которого незадействованный ресурс будет отмонтирован.

теперь смотрим, как у нас монтируются конкретные файловые системы:

auto.davfs

Тут описаны опции монтирования для нескольких популярных файловых хранилищ, предоставляющих доступ по webdav и монтируемых с помощью davfs2

gmx -fstype=davfs,rw,uid=localuser,gid=shared :https\://storage-file-eu.gmx.com
mydrive -fstype=davfs,rw,uid=localuser,gid=shared :https\://webdav.mydrive.ch
mydisk -fstype=davfs,rw,uid=localuser,gid=shared :https\://mydisk.se/USERNAME
icloud -fstype=davfs,rw,uid=localuser,gid=shared :http\://webdav.icloud.com/USERNAME
4shared -fstype=davfs,rw,uid=localuser,gid=shared :https\://webdav.4shared.com:443/wa

Доступ на icloud настроен по http, так как сертификат, выдаваемый данным сервером при доступе по https привязан у другому домену, если монтировать вручную - запрашивает разрешения и монтирует. Так же, теоретически можно подсунуть данный сертификат davfs2 насильно.

Для сравнения, при ручном монтировании аналогом первой строки будет примерно следующее:

mount -t davfs -o rw,uid=localuser,gid=shared https://storage-file-eu.gmx.com /mnt/gmx

также рекомендуется для данного сервера добавить опцию 'if_match_bug 1' в файл /etc/davfs2/davfs2.conf


Список логинов и паролей, привязанных к точкам монтирования (!) хранится в файле /etc/davfs2/secrets

/mnt/webdav/gmx  USERNAME@gmx.us    secretgmx
/mnt/webdav/mydrive  USERNAME    secretmydrive
/mnt/webdav/mydisk  USERNAME    secretmydisk
/mnt/webdav/icloud  USERNAME    secreticloud
/mnt/webdav/4shared  USERNAME    secret4shared


auto.nfs4

docs   -rw,hard        192.168.0.1:/docs


auto.sshfs

Не рекомендую этим пользоваться, но если очень хочется (читай: лень настраивать что-то другое) - то можно.

Необходимо сделать беспарольную авторизацию по ключам локального root для удалённого remoteuser.

olddocs  -fstype=fuse,rw,nodev,nonempty,noatime,allow_other,max_read=65536 :sshfs\#remoteuser@192.168.0.1\:/home/docs

запуск

/etc/init.d/autofs restart