8

Я установил блочное устройство (внутренний жесткий диск), чтобы сказать ~/HD , и я пытаюсь,

~# umount ~/HD

Это отвечает,

umount: device is busy.

Теперь я убиваю все процессы вручную, изучив

~# fuser -m ~/HD

Я также уверен, что на самом деле ни один процесс не обращается к пути ~/HD

~# lsof | grep HD

Все еще umount ~/HD говорит, что device is busy даже с опцией -f .

PS: я не хочу использовать опцию -l для umount , поскольку подключенное устройство на самом деле является зашифрованным устройством отображения, которое, в свою очередь, не будет отключено, если устройство отображения явно не отключено.

Поэтому в основном мой вопрос заключается в том, как заставить umount действительно отключить устройство ИЛИ Как устройство может быть помечено как занятое, пока к нему не обращаются никакие процессы (или, по крайней мере, fuser и lsof не сообщают об этом) и что я могу с этим сделать ?

Я на Ubuntu 9.10 x64.

8 ответов8

5

Убедитесь, что ваш текущий рабочий каталог (запустите 'pwd') не находится в ~/hd. Если вы находитесь в этом каталоге, umount откажется отмонтировать.

3

Команда lsof скажет вам, какие процессы удерживают файл открытым.

3

Вы увидите это поведение, если вы смонтировали что-то еще в подкаталоге ~/hd. В этом случае ни fuser, ни lsof ничего не покажут. Если вы ничего не смонтировали в ~/hd ('mount' ответит на этот вопрос), то я не уверен, что проверять.

2

чтобы найти активные процессы / пользователи выполняют:

fuser -u /path /to /mount

затем выполните следующее, чтобы удалить их:

fuser -k /path /to /mount

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

1

Ларкс писал:«Такое поведение вы увидите, если подключите что-то еще в подкаталог ~/hd. В этом случае ни fuser, ни lsof ничего не покажут ».

Использование lsof с grep покажет использование подкаталога - например, «lsof | grep HD».

У меня была та же проблема, что и у исходного постера, и я нашел причину с помощью команды выше.

0

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

0

Если вы действительно хотите просто размонтировать его, вы можете использовать umount -f

от человека

-f     Force unmount (in case of an unreachable NFS system).  (Requires kernel 2.1.116 or later.)
0

Вы пытались использовать синхронизацию?

Команда sync очищает кэши файловой системы, заставляя записанные измененные блоки записываться на диск.

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