Сетевые папки в Linux: Автоматическое подключение за 5 минут
Вы устали каждый раз вручную подключать общие папки на своих Linux-серверах? Тратите время на одни и те же команды? Есть способ лучше!
Представьте, что сетевой ресурс появляется в вашей системе именно тогда, когда он нужен, и исчезает, когда не используется. Это не магия, а технология autofs.
Мы уже рассказывали о настройке NFS-сервера. Теперь настало время для клиентской части — научиться легко и эффективно подключаться к сетевым папкам.
В этом руководстве вы найдете два рабочих подхода. Сначала мы быстро покажем, как примонтировать папку одной командой `mount` для разовых задач. Вы поймете синтаксис и убедитесь, что всё работает.
Но главный фокус — настройка автоматики. Вы научитесь настраивать autofs так, чтобы папка монтировалась сама при первом обращении и отключалась после таймаута. Это экономит трафик и освобождает ресурсы.
Мы разберем всё по шагам: установка пакетов, правка ключевых конфигурационных файлов `/etc/auto.master` и `/etc/auto.nfs`, и тонкие настройки, такие как таймауты и опции монтирования.
Готовы забыть о рутине и настроить умный доступ к сетевым ресурсам? Переходите к статье — ваши серверы станут работать эффективнее!
В одной из прошлых статей мы рассматривали как настраивать сетевые папки в Linux с помощью NFS. Если в Windows используется для этих целей Samba, то в Linux принято организовывать общие папки с помощью сетевой файловой системы NFS.
В этой статье мы поговорим о том как монтировать такие папки вручную, а также как настроить их монтирование при обращении с помощью autofs. Так вы будете экономить трафик между серверами и получите неплохую производительность.
Монтирование сетевой папки в Linux
Для того чтобы примонтировать сетевую папку в системе должен быть установлен пакет nfs-commons. В Ubuntu его можно установить такой командой:
sudo apt install nfs-common
Затем можно выполнять монтирование с помощью обычной команды mount, которой надо передать адрес сервера NFS и путь к папке в файловой системе сервера. Например, чтобы смонтировать папку /var/nfs выполните:
sudo mount ip_адрес:/var/nfs /mnt
Никакой авторизации в NFS нет, поддерживается только ограничение доступа по IP адресу, поэтому монтирование должно пройти успешно. Если статическое монтирование работает хорошо, можно переходить к настройке autofs. Не забудьте размонтировать сетевую папку:
sudo umount /mnt
Сначала нужно установить этот сервис. Для этого в Ubuntu выполните команду:
sudo apt install autofs
Все настройки сетевых папок, которые надо монтировать находятся в файле /etc/auto.master. Каждая строчка представляет из себя отдельную папку и имеет такой синтаксис:
/точка/монтирования /файл/с/карты --timeout=значение
Здесь файл карты, обычно это /etc/auto.misc - файл в котором более подробно описано что и куда надо монтировать. Синтаксис одной записи в файле /etc/auto.misc такой:
/точка/монтирования опции_монтирования ip_адрес:/путь/к/сетевой/папке
Для примера будем монтировать ту же сетевую папку /var/nfs на сервере 185.117.155.209 в локальную папку /mnt. В файл /etc/auto.master надо добавить такую строчку:
sudo vi /etc/auto.master
/mnt /etc/auto.nfs --timeout=100

Здесь мы сообщаем, что общая папка монтирования для всех ресурсов, описанных в файле /etc/auto.nfs - /mnt и если к ресурсу не обращаются на протяжении 100 секунд, то её следует размонтировать. Далее надо добавить описание монтирования в файл /etc/auto.nfs:
sudo vi /etc/auto.nfs
share -fstype=nfs4,rw 185.117.155.209:/var/nfs

Здесь - share это точка монтирования нашей сетевой папки в папке /mnt, затем идут опции монтирования, а потом адрес сервера и путь к папке на удалённой машине. Далее надо перезапустить сервис autofs:
sudo systemctl restart autofs
Затем можно попытаться обратиться к этой папке и она автоматически смонтируется:
ls /mnt/share

Как видите, всё достаточно просто. Так и выполняется автоматическое монтирование сетевых папок в Linux. Но чтобы у вас появилась возможность создавать файлы в этой папке, надо чтобы сервер NFS был правильно настроен. Об этом смотрите предыдущую статью про настройку NFS.