11

У моего коллеги есть настольный компьютер с /home на нашем файловом сервере. Я разработал Perl-скрипт для sshfs -монтирования определенного каталога на другом хосте SSH, который отлично работает на моем ноутбуке.

На его компьютере сценарий не может отключить sshfs в конце и оставляет точку монтирования нечистой. Я не нашел никакого способа восстановить точку монтирования, кроме перезагрузки. После некоторого тестирования я обнаружил, что разница между нашими настройками заключается в том, что его /home находится на NFS. В его /tmp это работает без нареканий.

После монтирования во время работы скрипта все нормально. Но при уничтожении процесса sshfs он указывается <defunc> как ps , пока не завершится родительский процесс (скрипт Perl). При запуске команды raw sshfs в оболочке проблема по-прежнему возникает.

ls -dl для точки монтирования выглядит следующим образом (как я помню, у меня нет реальной копии вывода оболочки):

? 1 ? ? 4096 Feb  9 15:37 file_archive/

(только вопросительные знаки для большей информации, по крайней мере, все детали разрешения)

Монтирование sshfs по-прежнему отображается в списке при mount но операция размонтирования завершается неудачно, при этом разрешение на ошибку запрещается даже при выполнении от имени пользователя root .

Я искал в Google, но нашел только много сравнений между sshfs и NFS для запуска сетевых файловых систем. Как безопасно выполнить монтирование / размонтирование sshfs в каталоге NFS?

3 ответа3

33

Вы должны иметь возможность размонтировать общий ресурс sshfs, выполнив:

 fusermount -u /path/to/sshfs/share
11

Просто завершите процесс с помощью pkill и затем смонтируйте путь к смонтированной папке.

 pkill -kill -f "sshfs" && umount /path/to/sshfs/share
0
sudo diskutil umount force ~/mount/

Похоже, эта команда работает в OS X.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .