![](https://habrastorage.org/getpro/habr/upload_files/d95/167/67e/d9516767e1bc9e3f58d267aff69880e5.png)
![](https://habrastorage.org/getpro/habr/upload_files/81e/51f/939/81e51f93963745cc9b23231d093151e8.jpg)
Автор статьи: Рустем Галиев
IBM Senior DevOps engineer & Integration Architect
Привет Хабр! На связи Рустем.
Сегодня мы поговорим про такую практику в Linux, как automount
Мы настроим сервер NFS для предоставления некоторых общих ресурсов и настроим автоматическое монтирование для автоматического доступа к этим общим ресурсам при необходимости.
В этой лабораторной задаче мы будем практиковаться в том, как:
Как настроить сервер NFS для предоставления простого общего ресурса
Как проверить доступ к серверу NFS
Как установить, настроить и запустить службу autofs
Как проверить автомонтируемые каталоги
Устанавливаем и настраиваем NFS сервер
Использование автоматического монтирования имеет смысл в сочетании с удаленными общими ресурсами NFS. Вы часто будете видеть это, чтобы предоставить доступ к домашним каталогам пользователей на основе NFS. Это позволяет нам размещать домашние каталоги на одном центральном сервере и предоставлять пользователям доступ к этим домашним каталогам при входе на любой компьютер. Чтобы создать такую среду, сначала необходимо установить и настроить сервер NFS.
Для начала мы используем dnf install -y nfs-utils для установки сервера NFS и связанных с ним утилит.
![](https://habrastorage.org/getpro/habr/upload_files/fb6/246/7c9/fb62467c99cb206227fd9e20e8da0f8a.png)
В NFS нам нужно чем-то поделиться. Давайте создадим фиктивную структуру домашнего каталога пользователя, которую затем можно будет расшарить:mkdir -p /users/nfs/{lisa,linda,anna}
Далее нам нужно сообщить NFS, чтобы она предоставила общий доступ к каталогу, содержащему домашние каталоги этих пользователей. Для этого нужен файл /etc/exports, который содержит имя каталога для общего доступа, включая некоторые права доступа:echo "/users *(rw,no_root_squash)" > /etc/exports
![](https://habrastorage.org/getpro/habr/upload_files/fbd/f97/a32/fbdf97a32b617a4f975b526036b7ac8d.png)
Включаем и проверяем NFS сервер
На данный момент мы создали базовую конфигурацию NFS. Давайте запустим и включим сервер NFS и проверим: systemctl enable --now nfs-server
Команда showmount предоставляет простой способ проверки доступа к серверу NFS. В данном случае это очень просто, так как сервер NFS даже не работает удаленно. Вот почему нам также не нужно настраивать какой-либо брандмауэр. Мы используем следующую команду для проверки доступности общих ресурсов NFS: showmount -e localhost
Мы увидим, что каталог /users экспортирован, а это значит, что пора заняться настройкой автомонтирования.
![](https://habrastorage.org/getpro/habr/upload_files/451/eeb/a10/451eeba10c7d058155103fbc0f6c901c.png)
Устанавливаем пакет autofs
Чтобы использовать automount, нам нужно установить службу autofs. Начнем с этого: dnf install -y autofs
![](https://habrastorage.org/getpro/habr/upload_files/8bd/16b/fed/8bd16bfed4a26fdb7a37ba08fda6026e.png)
Поскольку у autofs еще нет никакой конфигурации, нет особого смысла запускать ее сейчас, поэтому давайте перейдем к следующему шагу и создадим конфигурацию.
Создаем конфигурацию автомонтирования
Конфигурация автомонтирования хранится в двух файлах. Файл /etc/auto.master используется для определения каталога, которым будет управлять автомонтирование, а также файла, используемого для дальнейшей настройки. Хорошим примером является каталог /misc. Мы используем следующую команду, чтобы увидеть, как выглядит эта строка по умолчанию: grep '^/misc' /etc/auto.master
![](https://habrastorage.org/getpro/habr/upload_files/3aa/116/1f8/3aa1161f85b1b6d7d8699d27f0497f03.png)
В этом сценарии мы имитируем автоматическое монтирование домашних каталогов пользователей, предоставляемых NFS. Для этого мы запускаем следующую команду, чтобы добавить строку в файл auto.master: echo "/home/nfs /etc/auto.nfs" >> /etc/auto.master
![](https://habrastorage.org/getpro/habr/upload_files/c7b/227/7fd/c7b2277fd8b7c501c795cca96c4436d5.png)
Если нам когда-нибудь понадобится пример автомонтируемого каталога, взгляните на содержимое /etc/auto.misc. Он покажет нам имена подкаталогов, которые мы собираемся монтировать в основной каталог, а также откуда эти каталоги можно получить. Строка, которая монтирует FTP-сервер Linux (который на самом деле является сервером NFS), очень полезна: grep -i linux /etc/auto.misc
![](https://habrastorage.org/getpro/habr/upload_files/7d8/8f5/ed7/7d88f5ed79eecca5d4e67d7ea7f4d04b.png)
На основе этого примера мы можем добавить монтирование для домашних каталогов NFS. Однако есть одна вещь, которую нам нужно сделать по-другому. Нам нужны подстановочные знаки для ссылки на любой каталог, а для ссылки на соответствующую часть на сервере NFS нам нужен амперсанд. Поэтому для создания конфигурации автомонтирования мы используем echo "* -rw localhost:/users/nfs/&" > /etc/auto.nfs
![](https://habrastorage.org/getpro/habr/upload_files/39e/4b2/00b/39e4b200b7fab7f55daeebba4ecf543e.png)
На этом настройка завершена, поэтому пришло время запустить и включить службу autofs: systemctl enable --now autofs
![](https://habrastorage.org/getpro/habr/upload_files/cf5/44f/18a/cf544f18aa48ec2e0df96a0428a50fd2.png)
Проверяем монтирования
В этот момент все должно работать. Во-первых, давайте посмотрим, как это выглядит. Используйте следующую команду, чтобы проверить содержимое (включая скрытые файлы) каталога /home/nfs
. Глядя на результат, обратите внимание, что мы никогда не создавали этот каталог. Нам и не нужно было его создавать,, потому что autofs сделал это за нас:
ls -al /home/nfs
![](https://habrastorage.org/getpro/habr/upload_files/cd1/4d5/14e/cd14d514e6608516bb43f795a04d8fa3.png)
На предыдущем шаге мы видели, что каталог /home/nfs не содержит подкаталогов. Это ожидаемо, потому что autofs станет активным только тогда, когда будет осуществлен доступ к одному из подкаталогов. Для домашнего каталога это произойдет автоматически при входе пользователя в систему. Сделаем следующее, чтобы имитировать это: cd /home/nfs/linda
Введем pwd, чтобы убедиться, что мы действительно находимся в каталоге /home/nfs/linda, который теперь автоматически смонтирован для нас.
![](https://habrastorage.org/getpro/habr/upload_files/bd4/ddd/d92/bd4dddd92f283c90e523620235546170.png)
Чтобы понять немного больше обо всем, что происходит в фоновом режиме, мы используем mount | tail -5
где мы увидим монтирования, созданные autofs.
![](https://habrastorage.org/getpro/habr/upload_files/739/694/a2c/739694a2ce70e91d073ef3ec11e7e577.png)
Все довольно просто!
В заключение приглашаю всех на бесплатный урок специализации Linux, где разберем основные моменты использования LVM для организации дисковой системы в Linux.
Комментарии (2)
wizard_s
20.12.2022 22:59+2А будет рассказ о том, как лечить зависший nfs клиент при отвалившемся сервере и что делать, чтобы этого не происходило?
Johan_Palych
Какой интересный сервер без Firewall и SElinux