Назад | Перейти на главную страницу

Как отключить общий ресурс NFS в Solaris 2.7, если с сервером NFS невозможно связаться?

Каждый раз, когда я пытаюсь размонтировать / some / fs, он говорит, что занят. Сервер ушел до свидания; у кого-нибудь есть идеи?

Я пытался:

unmount -f /some/fs
Illegal option

unmount -o force /some/fs
Illegal option

unmount /some/fs
File system is busy

Иногда это срабатывает:

mount /some/fs -o remount,soft
umount -f /some/fs

Если есть причина, отличная от попытки поддерживать порядок, например, она вызывает зависание каждый раз, когда вы случайно входите в этот каталог, мне интересно, могли бы вы смонтировать что-то еще поверх. Я не уверен, есть ли lofs в Solaris 2.7 (команда mount, которую я использовал, работает в Solaris 10), но вы можете попробовать просто смонтировать другой каталог поверх:

mkdir /var/tmp/some_dir
mount -F lofs /var/tmp/some_dir /path/to/nfs/mount

Таким образом, у вас не будет проблем, когда кто-то попытается смонтировать этот каталог. Однако у вас могут возникнуть проблемы с такими командами, как df.

Если это не оптимальное решение, вы можете попробовать настроить временный сервер nfs там, где он был раньше, и надеяться, что серверу удастся подключиться к нему. Вы можете создать для него виртуальную машину или даже просто настроить общий ресурс nfs на своем ноутбуке и временно изменить IP-адрес. Достаточно времени, чтобы сервер подумал, что у него действующее монтирование nfs, и размонтирует его.

Однако все это кажется немного большей работой, чем просто перезагрузка в подходящий момент (например, при установке патчей).

Ваша последняя запись, «файловая система занята», подразумевает, что где-то на этом монтировании есть открытый файл, что и является настоящей причиной вашей боли. Есть ли шанс найти этот файл и убить любой процесс, который его использует?

Я не уверен, что мой ответ в Q # 75883 относится к Solaris или нет.