Autofs: различия между версиями

Материал из ALT Linux Wiki
(Для случая samba с доменами)
 
(не показано 14 промежуточных версий 6 участников)
Строка 12: Строка 12:
Каталог же /mnt/auto/server/ не должен существовать. В противном случае сетевой ресурс смонтирован не будет.  
Каталог же /mnt/auto/server/ не должен существовать. В противном случае сетевой ресурс смонтирован не будет.  


=Настройка=
=Установка и настройка=
Установите из репозитория:
$ su -
# apt-get update
# apt-get install autofs


Конфигурация описывается файлами: /etc/auto.* , среди которых:
Конфигурация описывается файлами: /etc/auto.* , среди которых:
Строка 23: Строка 27:
Пример содержимого:
Пример содержимого:


  /mnt/auto       /etc/auto.tab  -t 15
  /mnt/auto     /etc/auto.tab  -t 15
  /mnt/net      /etc/auto.avahi -t 120
  /mnt/net      /etc/auto.avahi -t 120
  /mnt/smb      /etc/auto.smb  -t 5
  /mnt/smb      /etc/auto.smb  -t 5
Строка 34: Строка 38:
При этом нет необходимости определять каждый адрес с сетевыми файловыми системами, и задав один раз строчку для smb можно обращаться к любому компьютеру обратившись к пути: /mnt/smb/server/share или /mnt/smb/192.168.1.1/share (у меня это работало не всегда).
При этом нет необходимости определять каждый адрес с сетевыми файловыми системами, и задав один раз строчку для smb можно обращаться к любому компьютеру обратившись к пути: /mnt/smb/server/share или /mnt/smb/192.168.1.1/share (у меня это работало не всегда).


==auto.tab==
==auto.tab (/etc/auto.avahi,  /etc/auto.smb и проч. )==


В этом файле определяются сетевые ресурсы по отдельности.  
В этих файле определяются сетевые ресурсы по отдельности.  


Примеры:  
Поля :
 
# точка монтирования (внутри, например  /mnt/net для файла /etc/auto.avahi)
# опции монтирования (тип файловой системы, права доступа и т.п.)
# монтируемый ресурс (сетевой путь расшариваемого ресурса)
 
 
== Примеры (для файла auto.tab): ==


===nfs===
===nfs===
Строка 51: Строка 62:
===samba===
===samba===


Простой пример:
Простой пример(без авторизации):


  public3 -fstype=cifs,noperm ://192.168.1.1/public
  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


Пример с авторизацией:  
Пример с авторизацией:  
Строка 77: Строка 96:


Обращаться к каталогам /mnt/auto/public3/ и /mnt/auto/user1/
Обращаться к каталогам /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 (см. <code>man 2 chmod</code>).  
В третьем примере с правами доступа параметры file_mode и dir_mode записываются как десятичные константы системного типа mode_t (см. <code>man 2 chmod</code>).  
Строка 96: Строка 125:


Если кто нибудь понимает причину (таймауты, кэш, ...), и как исправить, прошу дополнить.
Если кто нибудь понимает причину (таймауты, кэш, ...), и как исправить, прошу дополнить.
= Запуск сервиса =
$ su -
# systemctl enable autofs
# systemctl start autofs


=См.также=
=См.также=

Текущая версия от 06:47, 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

Здесь поля:

  1. каталог в котором будут подключаться сетевые файловые системы
  2. файл конфигурации или скрипт (что определяется правами на исполнение указанного файла)
  3. таймаут подключения при отсутствии обращения

При этом нет необходимости определять каждый адрес с сетевыми файловыми системами, и задав один раз строчку для smb можно обращаться к любому компьютеру обратившись к пути: /mnt/smb/server/share или /mnt/smb/192.168.1.1/share (у меня это работало не всегда).

auto.tab (/etc/auto.avahi, /etc/auto.smb и проч. )

В этих файле определяются сетевые ресурсы по отдельности.

Поля :

  1. точка монтирования (внутри, например /mnt/net для файла /etc/auto.avahi)
  2. опции монтирования (тип файловой системы, права доступа и т.п.)
  3. монтируемый ресурс (сетевой путь расшариваемого ресурса)


Примеры (для файла 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

См.также

Ссылки