Autofs: различия между версиями
Строка 45: | Строка 45: | ||
# точка монтирования | # точка монтирования | ||
# опции монтирования | # опции монтирования | ||
# монтируемый ресурс | # монтируемый ресурс | ||
Примеры: | Примеры: | ||
===nfs== | ===nfs== |
Версия от 06:40, 23 июня 2022
Общая информация
Работает следующим образом:
- Задаётся каталог, в котором будет происходить подключение, например /mnt/auto/.
- При необходимости обратиться к сетевой файловой системе, следует обратиться к каталогу с именем этой ФС в этом каталоге. Например /mnt/auto/server/share/.
- При обращении будет произведена попытка смонтировать соответствующий сетевой ресурс.
- При отсутствии обращения, после заданного таймаута, сетевой ресурс будет отмонтирован.
При этом, в нашем примере, каталог /mnt/auto может не существовать при остановленном autofs. При старте он будет создан.
Каталог же /mnt/auto/server/ не должен существовать. В противном случае сетевой ресурс смонтирован не будет.
Установка и настройка
Установите из репозитория:
$ su - # apt-get update # apt-get install autofs
Конфигурация описывается файлами: /etc/auto.* , среди которых:
- auto.master: подключение других конфигурационных файлов
- auto.tab: описание отдельных подключаемых ФС, с настройками отличными от остальных
auto.master
Пример содержимого:
/mnt/auto /etc/auto.tab -t 15 /mnt/net /etc/auto.avahi -t 120 /mnt/smb /etc/auto.smb -t 5
Здесь поля:
- каталог в котором будут подключаться сетевые файловые системы
- файл конфигурации или скрипт (что определяется правами на исполнение указанного файла)
- таймаут подключения при отсутствии обращения
При этом нет необходимости определять каждый адрес с сетевыми файловыми системами, и задав один раз строчку для smb можно обращаться к любому компьютеру обратившись к пути: /mnt/smb/server/share или /mnt/smb/192.168.1.1/share (у меня это работало не всегда).
auto.tab
В этом файле определяются сетевые ресурсы по отдельности.
Поля :
- точка монтирования
- опции монтирования
- монтируемый ресурс
Примеры:
=nfs
Два примера:
public1 -rw,soft,intr,rsize=8192,wsize=8192,nolock server:/mnt/share/public/ public2 -ro 192.168.1.1:/mnt/share/public/
Здесь обращение нужно производить к каталогам /mnt/auto/public1/ и /mnt/auto/public2/
samba
Простой пример(без авторизации):
public3 -fstype=cifs,noperm ://192.168.1.1/public
Для подключения нескольких расшаренных папок:
public3 -fstype=cifs,noperm /folder1 ://192.168.1.1/public /folder2 ://192.168.1.2/public
Для подключения к расшаренным папкам Windows(без авторизации):
public3 -fstype=cifs,guest ://192.168.1.1/public
Пример с авторизацией:
user1 -fstype=cifs,username=user1,credentials=/etc/auto.smb.auth,noperm ://server/user1
Пример с авторизацией и установкой прав доступа:
user1 -fstype=cifs,username=user1,credentials=/etc/auto.smb.auth,uid=user1,gid=user1,file_mode=416,dir_mode=488 ://server/user1
Где содержимое /etc/auto.smb.auth:
username=user1 password=SeCrEtPaSsWoRd
или
username=domain_user1 password=SeCrEtPaSsWoRd domain=DOMAIN_NAME
если используется сеть с доменной аутентификацией.
Обращаться к каталогам /mnt/auto/public3/ и /mnt/auto/user1/
Пример с аутентификацией Kerberos (актуально для Active Directory и Samba-DC), файл /etc/auto.samba:
share -fstype=cifs,multiuser,cruid=$USER,sec=krb5,domain=TEST.ALT,vers=1.0 ://server.alt/share
Для этого случая в /etc/auto.master потребуется запись вида
/mnt/smb /etc/auto.samba --ghost
Обращаться к каталогу /mnt/smb/share, параметр vers=1.0 нужен только для старых версий серверов.
Если указано несколько ресурсов (см. подключение нескольких расшаренных папок): к каталогам /mnt/auto/public3/folder1 и /mnt/auto/public3/folder2
В третьем примере с правами доступа параметры file_mode и dir_mode записываются как десятичные константы системного типа mode_t (см. man 2 chmod
).
Например 0750 -rwxr-x--- -> 0b111101000 -> 488.
davfs
Пример с яндексом:
yandex -fstype=davfs,rw,uid=user2,gid=group2 :https\://webdav.yandex.ru
Здесь, для авторизации в файл /etc/davfs2/secrets следует добавить:
/mnt/auto/yandex/ yandexuser yandexpassword
Обращаться к каталогу /mnt/auto/yandex/
При таких настройках у меня возникала следующая проблема. При копировании файлов на сетевую файловую систему, через некоторое время она становилась недоступна. Но при этом копирование продолжалось и по окончании его можно было нормально обратиться и увидеть файлы. При этом обычное монтирование, без autofs, работало нормально.
Если кто нибудь понимает причину (таймауты, кэш, ...), и как исправить, прошу дополнить.
Запуск сервиса
$ su - # systemctl enable autofs # systemctl start autofs
См.также
Ссылки
- Примеры, в частности для sshfs: http://linuxoid.in/Autofs