Target is busy linux ��� ���

umount: устройство занято. Почему?

При беге umount /path я получаю:

Файловая система огромна, поэтому lsof +D /path это нереальный вариант.

lsof /path , lsof +f — /path И fuser /path все не возвращает ничего. fuser -v /path дает:

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

umount -l и umount -f не достаточно хорош для моей ситуации.

Как мне выяснить, почему ядро ​​считает эту файловую систему занятой?

Кажется, причиной моей проблемы nfs-kernel-server был экспорт каталога. nfs-kernel-server , Вероятно , идет позади обычных открытых файлов и , таким образом , не перечислены lsof и fuser .

Когда я остановился, nfs-kernel-server я мог umount каталог.

Чтобы добавить BruceCran «s комментарий выше, причина для моего проявления этой проблемы только сейчас был несвежий петлевой крепление. Я уже проверил вывод fuser -vm / lsof +D , mount и cat /proc/mounts проверил, работал ли какой-то старый nfs-kernel-сервер, отключил квоты, попытался (но потерпел неудачу) a umount -f и почти смирился с тем, что отказался от времени безотказной работы 924 дней, прежде чем наконец проверить вывод из losetup и нахождения двух устаревших сконфигурировано-но-не-смонтированных шлейфов:

В сообщении на форуме Gentoo также перечислены файлы подкачки как потенциальный преступник; хотя обмен файлами, вероятно, довольно редок в наши дни, проверить выходную информацию не помешает cat /proc/swaps . Я не уверен, могли ли когда-нибудь квоты помешать демонтировать — я держался за соломинку.

Вместо того, чтобы использовать lsof для обхода файловой системы, просто используйте общий список открытых файлов и создайте его. Я считаю, что этот возврат должен быть быстрее, хотя и менее точным. Это должно сделать работу.

Для меня оскорбительным процессом был демон, запущенный в chroot. Потому что это было в chroot, lsof и fuser не нашел бы его.

Если вы подозреваете, что у вас есть что-то, работающее в chroot, sudo ls -l /proc/*/root | grep chroot вы найдете виновника (замените «chroot» на путь к chroot).

Открытые файлы

Процессы с открытыми файлами являются обычными виновниками. Показать их:

Преимущество использования /dev/ вместо /mountpoint : точка монтирования исчезнет после umount -l или может быть скрыта наложенным монтированием.

fuser Также можно использовать, но на мой взгляд, lsof есть более полезный вывод. Однако fuser это полезно, когда дело доходит до уничтожения процессов, вызывающих ваши драмы, чтобы вы могли продолжить свою жизнь.

Список файлов (см. Предостережение выше):

Интерактивно уничтожать только процессы с открытыми для записи файлами:

После перемонтирования только для чтения ( mount -o remount,ro ) можно (r) убить все оставшиеся процессы:

точки монтирования

Виновником может быть само ядро. Другая файловая система, смонтированная в той файловой системе, к которой вы пытаетесь umount , вызовет горе. Проверить с:

Для петлевых монтировок также проверьте вывод:

Анонимные иноды (Linux)

  • Временные файлы ( open с O_TMPFILE )
  • Inotify часы
  • [Eventfd]
  • [Eventpoll]
  • [Timerfd]

Это самый неуловимый тип покемона, и появляются в lsof «s TYPE столбец как a_inode (который без документов на lsof странице человека ).

Они не появятся lsof +f — /dev/ , поэтому вам нужно:

Для процессов уничтожения, содержащих анонимные inode, смотрите: Список текущих наблюдений inotify (pathname, PID) .

Чтобы fuser мог сообщить о PID, которые держат монтируемое устройство открытым, вы должны использовать -m

У нас есть собственная система, в которой корневая файловая система обычно доступна только для чтения. Иногда, когда файлы должны быть скопированы, перемонтируется чтение-запись:

Читайте также:  Экранная клавиатура windows 10 смена языка

А потом перемонтировал обратно:

На этот раз, однако, mount продолжал давать mount: / is busy ошибку. Это было вызвано процессом, содержащим открытый дескриптор файла, который был заменен некоторой командой, которая выполнялась, когда файловая система находилась в режиме чтения-записи. Важной строкой из lsof — / вывода является (имена были изменены):

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

lsof и fuser ничего не дал мне тоже.

После процесса переименования всех возможных каталогов в .old и перезагрузки системы каждый раз, когда я вносил изменения, я обнаружил один конкретный каталог (связанный с postfix), который отвечал за это.

Оказалось, что я когда — то сделал симлинк от /var/spool/postfix до /disk2/pers/mail/postfix/varspool того , чтобы минимизировать запись на диск на SDCARD основе корневой файловой системы (Штекер Шива).

С этой линке, даже после остановки postfix и dovecot услуг (как ps aux и netstat -tuanp ничего не связанный показывают) я был не в состоянии unmount /disk2/pers .

Когда я удалил символическую ссылку и обновил файлы конфигурации postfix и, dovecot чтобы они указывали непосредственно на новые каталоги, /disk2/pers/ я смог успешно остановить службы и unmount каталог.

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

Приведенная выше команда рекурсивно выведет список всех символических ссылок в дереве каталогов (здесь начиная с /var ) и отфильтрует те имена, которые указывают на конкретную целевую точку монтирования (здесь disk2).

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

Просто подумал, что поделюсь своим решением.

Сегодня проблема была в открытом сокете (конкретно tmux ):

У меня есть пара bind и overlay монтирует под моим горе, блокировали меня, проверьте автодополнению на точку монтирования , которую вы хотите отключить. Я подозреваю, что это было наложение, в частности, но могло быть и связыванием

Это скорее обходной путь, чем ответ, но я выкладываю его на случай, если это кому-нибудь поможет.

В моем случае я пытался изменить LVM, так как хотел увеличить раздел / var, поэтому мне нужно было его размонтировать. Я попробовал все комментарии и ответил в этом посте (спасибо всем и особенно @ ole-tange за их сбор) и все равно получил ошибку «устройство занято».

Я пытался убить большинство процессов в порядке, указанном в уровне запуска 0, просто на случай, если порядок был уместен в моем случае, но это тоже не помогло. Поэтому я создал собственный уровень выполнения (объединяющий вывод команды chkconfig в новые команды chkconfig —level), который был бы очень похож на 1 (однопользовательский режим), но с сетевыми возможностями (с сетью ssh и xinet).

Поскольку я использовал redhat, уровень запуска 4 помечен как «неиспользуемый / определенный пользователем», поэтому я использовал его и запустил. init 4 В моем случае это было нормально, так как мне нужно было перезагрузить сервер в любом случае, но, вероятно, это будет так кто-нибудь настраивал диски.

Источник

Принудительно размонтировать раздел (umount — device is busy)

Иногда не получается размонтировать раздел, так как выходит ошибка:

umount — device is busy

umount: /mnt/disk: device is busy

Тогда его можно размонтировать принудительно командой

umount -l /mnt/disk

umount -f /mnt/disk

авторынок

Похожие материалы (по тегу)

234 комментарии

Стартовый касательно довольно расхожих видов продвижения касательно коммерции есть навесная рекламное объявление, которую реально разместить на публичном локации плюс привлекать интересующихся клиентов. Предприятие LowCostPrint уже из течении многих лет занимается форматную печатью большой трудности также сумеет воплотить задание в постижимым цене в Московской области. В онлайн магазине баннер 6х3 пользователь сможет выбрать интересующий модификацию баннера: рекламные растяжки, интерьер оттиск, ненастоящие фасады, стенды, постпечатная печать, наклейки, пропечатка по сетке и другие форматы широкого печати.
Определиться с подходящим вариантом клиентам помогут наши опытные менеджеры, те что у телефонном распорядке дадут полноценный ответ на всяческих неотложных вопросы, укажут счет плюс посодействуют осущетсвить широкоформатную печать именно по онлайн ресурс. Трудясь на нашем оборудовании также из https://баннер-москва.рф/ прямыми снабженцами, наш магазин гарантируем новым покупателям отличное свойства, быстрая реализация, формирование любых размеров и верную тон!

Читайте также:  Как посмотреть модель оперативной памяти linux

Error 523 origin is unreachable

Error 523 origin is unreachable

Error 523 origin is unreachable

I’m not sure where you’re getting your information, but good topic.
I needs to spend some time learning much more or understanding more.
Thanks for magnificent info I was looking for this information for my mission.

Источник

Thread: [ubuntu] error unmounting /dev/sdb1: target is busy (udisks-error-quark, 14)

Thread Tools
Display

[ubuntu] error unmounting /dev/sdb1: target is busy (udisks-error-quark, 14)

So right now I’m trying to make a bootable Ubuntu flash drive to impress my friends, and so far it seemed to work, until when I was trying to unmount my flash drive from /cdrom but i come across the error

What I’ve seen is that I need to unmount the drive or else I wont be able to install it directly on the flash drive.

If you all need me to type in something in terminal I’m happy to.

Any support would help. Thanks!

Re: [ubuntu] error unmounting /dev/sdb1: target is busy (udisks-error-quark, 14)

If any process is using any files or sitting with a PWD inside a directory on the flash drive, then it will be «busy» and cannot be umounted.

If you want help making a live-boot flash device, there is a how-to page just for that.
If you want help umounting storage (umount is the command, not unmount), it cannot be in use. Certain file systems will always be in use — like the boot and OS partitions. The only way to access them when the partition(s) aren’t mounted is to boot from alternate media — an SSD, HDD, flash disk, USB disk, CDROM, DVD, something else.

Re: [ubuntu] error unmounting /dev/sdb1: target is busy (udisks-error-quark, 14)

Then how can I install it on the flash drive if I can’t unmount the drive?

Источник

Linux: какой процесс вызывает «устройство занято» при выполнении umount? [закрытый]

Linux: какой процесс вызывает «устройство занято» при выполнении umount?

12 ответов

посмотреть lsof command (список открытых файлов) — он может сказать вам, какие процессы держат что открыто. Иногда это сложно, но часто что-то просто sudo lsof | grep (your device name here) может сделать это за вас.

на всякий случай. иногда случается, что вы вызываете umount из терминала, и ваш текущий каталог принадлежит смонтированной файловой системе.

вы должны использовать .

например. fuser /dev/cdrom вернет PID(ы) процесса, используя /dev/cdrom .

если вы пытаетесь размонтировать, вы можете убить процесс тезисов с помощью -k (см. man fuser ).

Проверьте устройства с открытым циклом, сопоставленные с файлом в файловой системе с помощью «losetup-a». Они не появятся ни с lsof, ни с fuser.

также проверить /etc/exports . Если вы экспортируете пути внутри точки монтирования через NFS, это даст эту ошибку при попытке размонтировать, и ничего не появится в fuser или lsof .

(as перечисляет процессы, использующие файлы на монтируемой точке монтирования. Особенно полезно для поиска того, какой процесс (ы) использует установленный USB-накопитель или CD/DVD.

Читайте также:  Windows media не показывает изображение

lsof и fuser действительно два способа найти процесс, который держит определенный файл открытым. Если вы просто хотите, чтобы umount преуспел, вы должны изучить его-f и-l варианты.

именно поэтому существует» fuser-m /mount/point».

кстати, я не думаю, что» fuser «или» lsof » будут указывать, когда ресурс удерживается модулем ядра, хотя у меня обычно нет этой проблемы..

lsof и fuser тоже ничего мне не дали.

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

оказалось, что я когда-то сделал символическую ссылку из /var/spool/postfix на /disk2/pers/mail/postfix/varspool, чтобы минимизировать записи на диске в корневой файловой системе на основе SDCARD (Sheeva Plug).

С эта символическая ссылка, даже после остановки служб postfix и dovecot (как ps aux, так и netstat-tuanp не показали ничего связанного), я не смог отключить /disk2/pers.

когда я удалил символическую ссылку и обновил файлы конфигурации postfix и dovecot, чтобы указать непосредственно на новые dirs на /disk2/pers/, я смог успешно остановить службы и размонтировать каталог.

в следующий раз я буду более внимательно на выходе:

выше команда рекурсивно перечислит все символические ссылки в дереве каталогов (здесь, начиная с /var) и отфильтрует те имена, которые указывают на определенную целевую точку монтирования (здесь disk2).

открыть файлы

процессы с открытыми файлами являются обычные преступники. Покажите их:

есть преимущество в использовании /dev/ , а не /mountpoint : точка монтирования исчезнет после umount -l , или он может быть скрыт накладным креплением.

fuser также можно использовать, но на мой взгляд lsof имеет более полезный выход. Однако fuser полезно, когда дело доходит до убийства процессов, вызывая сцены так что вы можете получить с вашей жизнь.

список файлов на (см. пример выше):

интерактивно убивать только процессы с открытыми для записи файлами:

после переустановки только для чтения ( mount -o remount,ro ), безопасно (r) убить все остальные процессы:

Mountpoints

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

для петлевых креплений также проверьте выход:

анонимные коды (Linux)

  • временные файлы ( open С O_TMPFILE )
  • inotify часы
  • [eventfd]
  • [eventpoll]
  • [timerfd]

это самый неуловимый тип покемонов, и появиться в lsof ‘ s как a_inode (который недокументирован в lsof man page).

они не появятся в lsof +f — /dev/ , так что вам потребуется:

для процессов убийства, содержащих анонимные индексы, см.:список текущих часов inotify (путь, PID).

если вы все еще не можете размонтировать или перемонтировать устройство после остановки всех служб и процессов с открытыми файлами, то может быть файл подкачки или раздел подкачки, сохраняя устройство занято. Это не будет отображаться с fuser или lsof . Выключите замену с помощью:

вы можете проверить заранее и показать сводку любых разделов подкачки или файлов подкачки с:

в качестве альтернативы, используя команду sudo swapoff -a , вы также можно отключить своп, остановив службу или systemd в единица. Например:

в моем случае выключение swap было необходимо, в дополнение к остановке любых служб и процессов с открытыми для записи файлами, чтобы я мог переустановить свой корневой раздел только для чтения, чтобы запустить fsck на моем корневом разделе без перезагрузки. Это было необходимо на Raspberry Pi под управлением Raspbian Jessie.

файловые системы, смонтированные в файловой системе, которую вы пытаетесь размонтировать, могут вызвать target is busy ошибка в дополнение к любым файлам, которые используются. (Например, когда вы mount -o bind /dev /mnt/yourmount/dev чтобы использовать chroot там.)

чтобы найти, какие файловые системы монтируются в файловой системе, выполните следующие действия:

mount | grep ‘/mnt/yourmount’

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

Источник

Оцените статью