Autofs
Настройка 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
/mnt/cifs /etc/auto.cifs 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
4shared -fstype=davfs,rw,uid=localuser,gid=shared :https\://webdav.4shared.com:443/wa
box -fstype=davfs,rw,uid=dk,gid=shared :https\://www.box.net/dav
Для сравнения, при ручном монтировании аналогом первой строки будет примерно следующее:
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/4shared USERNAME secret4shared
/mnt/webdav/box USERNAME@mail.srv secretboxnet
auto.nfs4
docs -rw,hard 192.168.0.1:/docs
auto.cifs
SAMBA ресурсы
share -fstype=cifs,username=SAMBAUSER,password=SECRET,uid=localuser,gid=localgroup ://sambaserver/shared
auto.sshfs
Не рекомендую этим пользоваться, но если очень хочется (читай: лень настраивать что-то другое) - то можно.
Необходимо сделать беспарольную авторизацию по ключам локального root (так как autofs запускается от его имени) для удалённого 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