⚙️ Паровой сервер ROADIT

Команда showmount: паровой телеграф для разведки NFS-складов

Представьте себе огромный паровой склад, где хранятся ценные грузы — ваши файловые системы. К этому складу подходят десятки клиентов, каждый забирает свои ящики с данными. Но как сисадмину узнать, кто что забрал, какие двери открыты, какие кладовые вообще доступны для погрузки? Здесь на сцену выходит showmount — ваш персональный паровой телеграф, который мгновенно передаёт сводки прямо из сердца NFS-сервера.

showmount — это утилита из семейства NFS-tools, которая обращается к демону mountd на удалённой машине и запрашивает состояние NFS-экспортов. Она показывает, какие файловые системы экспортированы, какие клиенты их смонтировали, и какие каталоги сейчас активны. Без неё вы как слепой кочегар в трюме: не видите, куда ушёл пар и кто забрал ваш уголь.

Команда обычно лежит в /usr/sbin, который не всегда в стандартном PATH, так что если терминал отвечает «command not found» — не паникуйте, просто укажите полный путь или добавьте каталог в переменные окружения. Это как искать гаечный ключ в ящике, который подписан «Не открывать до вторника».



📝 Синтаксис

showmount [опции] [хост]

По умолчанию showmount опрашивает локальную машину (значение hostname). Если нужно разведать чужой склад — укажите IP или имя удалённого NFS-сервера.


Основные опции

ОпцияОписаниеПример
-a, --allПоказать все удалённые монтирования в формате хост:каталогshowmount -a
-d, --directoriesВывести только список смонтированных каталогов (без имён клиентов)showmount -d 192.168.1.10
-e, --exportsПоказать список экспортируемых файловых систем на сервереshowmount -e nfs-server
--no-headersУбрать заголовки из вывода (полезно для скриптов)showmount --no-headers
-h, --helpКраткая справка по использованию командыshowmount -h
-v, --versionПоказать версию утилитыshowmount -v

Примеры использования

Разведка экспортируемых каталогов

Самый частый сценарий — узнать, какие файловые системы вообще доступны на NFS-сервере. Это как заглянуть в накладную перед разгрузкой:

showmount -e 192.168.1.50

Типичный вывод:

Export list for 192.168.1.50:
/data/backups    192.168.1.0/24
/shared/projects *
/home/users      192.168.1.100

Звёздочка (*) означает, что каталог доступен всем — как общественный колодец в центре города.

Кто сейчас держит монтирование?

Если нужно узнать, какие клиенты активировали NFS-шары, используйте флаг -a:

showmount -a nfs-server

Вывод покажет что-то вроде:

All remote mounts:
client1.example.com:/data/backups
client2.example.com:/shared/projects
192.168.1.100:/home/users

Это ваш журнал посещений: кто заходил, что забирал.

Только каталоги, без лишнего шума

Когда вам не важны имена клиентов, а нужен просто список активных директорий:

showmount -d 192.168.1.50

Результат:

/data/backups
/shared/projects
/home/users

Удобно для скриптов автоматизации — меньше данных, проще парсить.

💡 Совет

Если вы постоянно опрашиваете один и тот же NFS-сервер, добавьте алиас в ~/.bashrc:

alias nfs-check='showmount -e 192.168.1.50'

Теперь одна команда nfs-check — и вы видите весь список экспортов. Экономия времени, как паровой подъёмник вместо лестницы.

⚡ Важно

showmount читает данные из файла /var/lib/nfs/rmtab, который ведёт демон mountd. Иногда там остаётся мусор — записи о клиентах, которые давно отключились (например, после аварийной перезагрузки без корректного размонтирования).
Если видите фантомные монтирования, которые физически не существуют, очистите файл и перезапустите NFS:

sudo rm /var/lib/nfs/rmtab sudo systemctl restart nfs-server

Это как продуть паровые трубы от накипи — система снова показывает честные данные.



⚙️ Машинное отделение ROADIT благодарит за прочтение.
Больше команд, шпаргалок и обзоров — на roadit.ru и в нашем Телеграф-канале.
📋 Все команды

Оставьте комментарий