Как заставить соединение CIFS размонтировать


У меня есть общий ресурс CIFS, установленный на машине Linux. Сервер CIFS не работает, или подключение к интернету не работает, и все, что касается монтирования CIFS, теперь занимает несколько минут до таймаута и не может быть убито во время ожидания. Я даже не могу запустить ls в своем домашнем каталоге, потому что есть символическая ссылка, указывающая внутри CIFS mount, и ls пытается следовать за ней, чтобы решить, какого цвета она должна быть. Если я попытаюсь подключить его (даже с помощью-fl), процесс umount зависает так же, как и ls. Даже не судо команда kill -9 может убить его. Как я могу заставить ядро размонтировать?

11 130

11 ответов:

Я использую ленивый размонтировать: umount -l (это нижний регистр L)

ленивый размонтировать. Отсоединить файловую систему теперь из иерархии файловой системы, и очистка всех ссылок на файловая система, как только она не занята больше. (Требуется ядро 2.4.11 или позже.)

umount -a -t cifs -l

работал как шарм для меня на CentOS 6.3. Это спасло меня от перезагрузки сервера.

на RHEL 6 это сработало:

umount -f -a -t cifs -l 

У меня была эта проблема в течение дня, пока я не нашел реальное решение. Вместо того, чтобы пытаться принудительно размонтировать общий ресурс smb, который висит, установите общий ресурс с опцией "soft". Если процесс пытается подключиться к общему ресурсу, который недоступен, он прекратит попытки через определенное время.

мягкий сделать крепление мягким. Сбой вызова файловой системы через несколько секунд.

mount -t smbfs -o soft //username@server/share /users/username/smb/share

stat /users/username/smb/share/file
stat: /users/username/smb/share/file: stat: Operation timed out

Не может быть реальным ответом на ваш вопрос, но это решение проблемы

это работает для меня (Ubuntu 13.10 Desktop на Ubuntu 14.04 Server): -

 sudo umount -f /mnt/my_share

установлен с

 sudo mount -t cifs -o username=me,password=mine //192.168.0.111/serv_share /mnt/my_share

где serv_share-это то, что настроено и указано в smb.файл conf.

попробуйте umount-f /mnt/share. Работает нормально с NFS, никогда не пробовал с cifs.

кроме того, взгляните на autofs, он будет монтировать общий ресурс только при доступе и размонтирует его afterworlds.

есть хороший учебник в www.howtoforge.net

есть опция-f для umount, которую вы можете попробовать:

umount -f /mnt/fileshare

вы указываете опцию'- t cifs ' для монтирования? Также убедитесь, что вы не указываете "жесткий" вариант для монтирования.

вы также можете рассмотреть fusesmb, так как файловая система будет работать в пользовательском пространстве вы можете убить его так же, как и любой другой процесс.

у меня была очень похожая проблема с davfs. На главной странице umount.davfs, Я обнаружил, что -f -l -n -r -v параметры игнорируются umount.davfs. Чтобы принудительно размонтировать мою гору davfs, я должен был использовать umount -i -f -l /media/davmount.

umount -f -t cifs -l /mnt &

будьте осторожны &, пусть umount работать в фоновом режиме. umount сначала отсоединит файловую систему, так что вы ничего не найдете/mnt. Если вы запустите

на RHEL 6 это сработало и для меня:

umount-f-a-t cifs-l FOLDER_NAME

ленивый размонтировать сделает эту работу за вас.

umount -l <mount path>