У меня есть коробка centos, в ней есть некоторые крепления NFS. Я пытаюсь выяснить, монтируются эти файловые системы NFS. И я выяснил, что если я переименую / usr / sbin / automount в другое имя, после перезагрузки коробки эти NFS не будут монтироваться. Так что я могу быть уверен, что автоматическое монтирование выполняет эти монтирования NFS.
Но /etc/auto.master ничего не показывает об этих данных NFS. Интересно, какие могут быть возможности автоматического монтирования, как какой NFS монтировать?
$ cat /etc/auto.master
#
# Sample auto.master file
# This is an automounter map and it has the following format
# key [ -mount-options-separated-by-comma ] location
# For details of the format look at autofs(5).
#
/misc /etc/auto.misc
#
# NOTE: mounts done from a hosts map will be mounted with the
# "nosuid" and "nodev" options unless the "suid" and "dev"
# options are explicitly given.
#
/net -hosts
#
# Include central master map if it can be found using
# nsswitch sources.
#
# Note that if there are entries for /net or /misc (as
# above) in the included master map any keys that are the
# same will not be seen as the first read key seen takes
# precedence.
#
+auto.master
Но под /var/run
, Я нахожу что-то вроде следующего:
prw------- 1 root root 0 Jan 20 04:36 autofs.fifo-bldmnt
prw------- 1 root root 0 Jan 20 04:36 autofs.fifo-blr
Файл auto.master обычно содержит такую строку:
/net -hosts
Более старая альтернатива (была):
/net /etc/auto.net
Первая строка - это так называемая встроенная карта, относящаяся к файлу / etc / hosts, а второй пример - это так называемая карта программ (обычно это простой сценарий оболочки), которая может лучше объяснить вам, как работает автомонтаж.
Я предполагаю, что у вас есть некоторые символические ссылки в вашей системе, указывающие на какой-то путь на удаленных серверах под /net
(или любой другой префикс пути autofs используется вместо / net в вашей копии /etc/auto.master
).
Всякий раз, когда путь ниже /net
Якорь посещается, автомонтажник перехватывает эту попытку и пытается смонтировать туда указанный каталог.
Предположим, что автоматическое монтирование запущено и в сети существует сервер NFS с именем HostA
который экспортирует каталог с именем Documents
в его /etc/exports
файл. Затем с помощью команды
cd /net/HostA/Documents
может автоматически смонтировать туда этот удаленный каталог без дальнейшей настройки клиента NFS.
Как и другие службы, automount использует именованные каналы для некоторого внутреннего межпроцессного взаимодействия. Итак, файлы в /var/run/
упомянутые в вопросе, создаются процессом автомонтирования для этой цели перед тем, как что-либо монтировать.
В ранних версиях пакета autofs /etc/auto.net
был скрипт, который вызывает команду showmount
или kshowmount --no-headers -e
NFS-SERVER для получения списка экспортированных файловых систем с сервера NFS.
showmount
на клиенте отображает каталоги, определенные в файле /etc/exports
на стороне сервера. Этот файл может содержать каталог /
. Но из соображений безопасности это никогда не было по умолчанию ни в одном дистрибутиве Linux, который я когда-либо видел.
У нас есть несколько систем RHEL6, которые должны быть чем-то похожи на машины с CentOS. Наши настройки сервера находятся в / etc / exports
/data/nfs <IP-Range>(rw,sync,insecure,root_squash,no_subtree_check,fsid=0)
/data/nfs/data <IP-Range>(rw,nohide,sync,insecure,root_squash,no_subtree_check)
а на клиентах настройки находятся в / etc / fstab
<Hostname of NFS-Server>:/data /data/<mount-directory> nfs4 rw 0 0