Не удалось извлечь диск так как он используется программой finder

Обновлено: 06.07.2024

  • « Том не может быть извлечен, потому что он в настоящее время используется ».
  • Msgstr "Диск " Имя диска "не был извлечён, потому что одна или несколько программ могут использовать его. "

или при попытке использовать Терминал: umount /Volumes/Diskname

  • " umount (/ Volumes / Diskname): ресурс занят - попробуйте 'diskutil unmount' "

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

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

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

Объем не может быть извлечен, потому что он в настоящее время используется.
Диск
Диск
XKCD

«Насколько мне известно, я не использую этот диск, но Finder говорит, что я использую, поэтому я должен ошибаться». Вы слишком доверяете машинам. ;-) Часто компьютеры не правы, а мы, люди, правы.

lsof это действительно ваша лучшая ставка. Самый быстрый и простой способ будет следующим:

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

В данном случае это QuickLook приложение, в котором открыт файл. Непосредственное закрытие приложения - лучший способ решить проблему. Однако это не всегда возможно. Например, QuickLook не отображается как приложение, к которому вы можете получить доступ в Dock.

Если вы не можете закрыть приложение вручную, вы можете использовать kill команду, чтобы завершить его из командной строки. Чтобы сделать это, используйте PID из второго столбца в качестве идентификатора для уничтожения. Из приведенного выше примера это будет:

Обратите внимание, что иногда это не работает, и необходимо использовать более агрессивную форму kill . Вот серия нарастающей агрессивности (на примере PID 2158):

Вы должны быть в состоянии извлечь диск после того, как процесс / приложение было убито.

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

Кроме того, иногда базовая команда sudo lsof /Volumes/myDrive ничего не находит. Если это произойдет, попробуйте добавить +D аргумент (т.е. sudo lsof +D /Volumes/myDrive ). Это сделает сканирование диска сверху вниз. Это займет больше времени, но должно поднять все, что приводит к невозможности извлечения диска.

Я также нашел это, но я надеялся, что у кого-то есть нетерминальное решение. Если нет, вы получите свой плюс один;) → Пол: Я бы посоветовал вам улучшить предложенную команду как: /usr/bin/sudo lsof /Volumes/myDrive О, отлично, я сделал lsof без sudo, что дает совершенно другой набор результатов. Да, sudo определенно необходим во многих случаях. В моем случае это показало, что это произошло из-за того, что Spotlight попытался проиндексировать диск, поэтому решение было отключить Spotlight для диска, а затем вручную остановить / перезапустить Spotlight.

Ты пробовал $ diskutil unmount /Volumes/Diskname ?

Или $ diskutil unmount force /Volumes/Diskname ?

Из-за сложного и переплетенного характера Mac OS X размонтирование может часто происходить с ошибками. Вместо этого рекомендуется использовать diskutil (1) (как в «diskutil unmount / mnt»).

Если в томе есть пробелы в названии, обязательно избегайте пробелов с помощью \ , например:

Или используйте кавычки, чтобы избежать путаницы.

Я думаю, что я попробовал это, и это не сработало. Но в следующий раз я попробую еще раз и обновлю свой пост соответственно. В вашем примере есть кавычки, а не апострофы. Что хорошо. @NicolasBarbulesco: Спасибо за указание на это, я внес исправления в ответ. Хороший улов! Работает -> sudo diskutil unmount force / Тома / Имя диска @tgkprog Рад это слышать, также спасибо за sudo команду, которая также может помочь другим.

Возможно, ваша проблема вызвана процессом mds : Spotlight индексирует ваш диск.

Я также обнаружил, что mds сервис использует его. Я попытался отключить службу mds для флэш-накопителя с помощью «sudo mdutil -i off / Volumes / 16GB», но это также не помогло. Мне пришлось перезапустить Finder, используя «Option + Click» на FInder.

Вы можете попробовать приложение donationware « Что меня хранит? », Которое показывает, какой процесс / приложение использует том / папку / файл.

Эта программа сертифицирована разработчиком для Mac OS X 10.6 Snow Leopard, но на странице RoaringApps для этого приложения указано, что она отлично работает на OS X 10.7 Lion и OS X 10.8 Mountain Lion.

О том, что меня держит?

У вас когда-нибудь возникала проблема, когда вы не можете очистить корзину или извлечь диск, потому что вам что-то мешает? Обычно причина в том, что в каком-то приложении открыт файл, и поэтому вы не можете избавиться от диска или удалить файл. Вот почему мы сделали «Что меня держит»! То, что держит меня, идентифицирует приложение, которое удерживает элемент открытым. Затем вы можете использовать функцию «Что держит меня», чтобы выйти из проблемного приложения (или убить его при необходимости), чтобы выполнить свою задачу. Что держит меня включает в себя рабочий процесс Automator, так что вы можете выполнять поиск прямо из Finder!

Это похоже на действующее программное обеспечение, но я действительно предпочитаю собственные решения OS X. Под родным вы имеете в виду что-то, что Apple предоставляет? На фронте GUI ничего подобного нет. Кроме того, WKM существует уже несколько лет. Спасибо за ваше добавление. «Нативный» - это не то слово, которое я имел в виду под «не третьей стороной». WKM - хорошее решение, но лично я предпочитаю lsof. Только что протестировал приложение в High Sierra, и оно все еще работает. Это также 64-битный.

В моем случае это был признак того, что файловая система повреждена. Запуск Disk Utility (или, если этого недостаточно, DiskWarrior) решил проблему и снова сделал диск извлекаемым.

Кажется маловероятным Скорее всего, Spotlight или другое приложение или служба заблокированы на диске.

И решение для командной строки, и What Keeping Me прекрасно работают.

Напомним, что командная строка в терминале:

Приложение с графическим интерфейсом «Что меня держит» доступно в Hamsoft Engineering .

Скриншоты обоих с одинаковым поиском происходит.

Вывод командной строки
GUI для того, что меня держит

Я предпочитаю командную строку немного, так как она всегда с тобой. С другой стороны, What Keeping Me быстрее и проще в использовании, если он у вас установлен.

Существует альтернатива графическому интерфейсу для приложения CLI lsof :
fseventer это отличная утилита для мониторинга доступа к файловой системе для различных целей . Он работает с привилегиями суперпользователя ( sudo ), поэтому он видит все права на чтение / запись всех смонтированных файловых систем и представляет их в очень четком обзоре.

Мой опыт: у меня был том, который постоянно не мог быть извлечен должным образом (как на скриншотах OP), и мне всегда требовалось «принудительное извлечение», иногда даже принудительное физическое отключение (или не рекомендованное!) Может повредить вашу файловую систему (системы) на этом диск) или выключение системы, чтобы обойти этот грубый метод.

Определите, к какому файлу осуществляется доступ (с помощью lsof или fseventer ). В моем случае это был файл Classic Mac OS с разветвлением ресурса, который оставался открытым, вероятно, на нем висел какой-то фоновый процесс разбора диска (Spotlight, QuickLook или тому подобное).

Резервное копирование этих тревожных данных в файловый архив (который сохраняет (классические) данные, специфичные для Mac). Я просто использовал встроенную функцию Finder "Compress" из его контекстного меню.

Удалите проблемный файл / папку.

  • С Finder как обычно. Вероятно, это не удастся, так как это «проблемный файл / папка».
  • С Finder плюс удерживая ALT во время очистки корзины. Это создает немного больше силы, но, вероятно, все равно потерпит неудачу.
  • Через Терминал с sudo rm -R /path/to/troublesome/FileOrFolder . Это в конечном итоге сработало после неудачных попыток Finder.

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

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

Finder – это одно из самых главных приложений на компьютере Mac. Несмотря на то, что 99 % времени файловый менеджер работает стабильно и быстро, все же иногда могут возникать некоторые проблемы с ним. Зачастую это происходит после крупного обновления операционной системы. К счастью, все неполадки решаются достаточно просто.


Если Finder работает медленно, а перезапуск файлового менеджера не решает проблему, то в таком случае нам необходимо сбросить настройки приложения. Как это сделать?
Есть два способа.

Первый – используя сам Finder.

  • Открываем наш файловый менеджер
  • Зажимаем комбинацию клавиш Command + Shift + G
  • В появившемся окне вводим:



Второй метод – на случай, если воспользоваться Finder не представляется возможным. К примеру, если программа не отвечает.

  • Запускаем приложение «Терминал» любым удобным способом
  • Вводим следующую команду в окне командной строки:
    mv

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

Свободное общение и обсуждение материалов

Apple выпустила iOS 14.2.1 для iPhone 12 с исправлением ошибок Apple представила watchOS 8 почти без нововведений

Лонгриды для вас



В iOS 15 появится функция Live Text, которая позволяет распознавать текст на готовых фотографиях. Но ради неё совершенно необязательно обновляться, потому что получить эту функцию можно и на старых версиях ОС


Инстаграм добавит платные подписки. С их помощью пользователи смогут предоставлять доступ к эксклюзивному контенту и монетизировать свои блоги. В статье расскажем о нюансах работы новой функции и разеремся в деталях.

Очень часто не могу удалить выбранный файл с помощью сочетания клавиш- вместо этого удаляется файл с рабочего стола (при активном окне fonder). Как решить эту проблему раз и навсегда?

Favorite

В закладки

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

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

Сейчас разберемся, что делать в таком случае.

Что делать, если возникает ошибка при удалении файла


1. Убедитесь, что вы пытаетесь удалить файл не с внешнего накопителя, который отформатирован в NTFS.

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

2. Перезагрузите компьютер и попробуйте удалить файл после запуска системы перед открытием приложений. Возможно, данные использовались в какой-либо программе и не могли быть удалены.


3. Откройте свойства файла из контекстного меню и убедитесь, что у него не установлен флаг Защита.

Снимите флаг для возможности удаления файла.


4. При необходимости изменить атрибут сразу у нескольких файлов, запустите Терминал и введите следующую команду:

chflags -R nouchg

После этого перетяните фалы в окно приложения Terminal и нажмите кнопку Ввод для выполнения команды.

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

(13 голосов, общий рейтинг: 4.69 из 5)

Favorite

В закладки

Anonim

  • 'Том не может быть извлечен, потому что он сейчас используется.'

или при попытке использовать Терминал: umount /Volumes/Diskname

  • 'umount (/ Volumes / Diskname): ресурс занят - попробуйте diskutil unmount'

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

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





lsof действительно ваш лучший выбор. Самый быстрый и простой способ: -

Запуск может занять пару минут, но как только он будет завершен, он выдает список открытых файлов на диске. Результат будет выглядеть примерно так:

В данном случае это QuickLook приложение, в котором открыт файл. Прямое закрытие приложения - лучший способ решить проблему. Однако это не всегда возможно. Например, QuickLook не отображается как приложение, к которому вы можете перейти в Dock.

Если вы не можете закрыть приложение вручную, вы можете использовать kill команду, чтобы завершить ее из командной строки. Для этого используйте PID из второго столбца в качестве идентификатора уничтожения. В приведенном выше примере это будет:

Обратите внимание, что иногда это не работает, и более агрессивная форма kill должны быть использованы. Вот серия нарастающей агрессивности (на примере PID 2158):

Вы должны иметь возможность извлечь диск после того, как процесс / приложение были убиты.

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

Также иногда базовая команда sudo lsof /Volumes/myDrive ничего не найду. Если это произойдет, попробуйте добавить +D аргумент (т.е. sudo lsof +D /Volumes/myDrive ). Будет выполнено сканирование диска сверху вниз. Это займет больше времени, но он должен подобрать все, что мешает извлечению диска.

(Подсказка к посту Алека Якобсона для дополнительных деталей.)

  • 1 Я тоже нашел это, но надеялся, что у кого-то есть нетерминальное решение. Если нет, вы получите плюс один;)
  • 30 лсоф без sudo май не произвести требуемый результат.
  • 3 → Пол: Я бы посоветовал вам улучшить предлагаемую команду следующим образом: /usr/bin/sudo lsof /Volumes/myDrive
  • 3 О, отлично, я сделал lsof без sudo, что дает совершенно другой набор результатов.
  • 2 Ага, sudo определенно требуется во многих случаях. В моем случае это показало, что это произошло из-за попытки Spotlight проиндексировать диск, поэтому решением было отключить Spotlight для диска, а затем вручную остановить / перезапустить Spotlight.

Ты пробовал $ diskutil unmount /Volumes/Diskname ?

Или $ diskutil unmount force /Volumes/Diskname ?

Как указано на странице руководства:

Если в имени вашего тома есть пробелы, не забудьте экранировать пробелы с помощью \ , например:

Или используйте кавычки, чтобы избежать путаницы.

  • 1 Думаю, я пробовал это, но это не сработало. Но в следующий раз я попробую еще раз и соответствующим образом обновлю свой пост.
  • В вашем примере есть цитаты, а не апострофы. Что хорошо.
  • 1 @NicolasBarbulesco: Спасибо, что указали на это, я внес исправления в ответ. Хороший улов!
  • 1 Работает -> sudo diskutil unmount force / Volumes / Diskname
  • 1 @tgkprog Рад это слышать, также спасибо за sudo команда, которая также может помочь другим.

Вероятно, ваша проблема вызвана процессом mds : В центре внимания индексация вашего диска.

У меня есть эта проблема, и я не нашел решения (пока).

Вы можете попробовать приложение для пожертвований "Что меня держит?" это показывает, какой процесс / приложение использует том / папку / файл.

Эта программа сертифицирована разработчиком для Mac OS X 10.6 Snow Leopard, но на странице RoaringApps для этого приложения указано, что она отлично работает с OS X 10.7 Lion и OS X 10.8 Mountain Lion.

О том, что меня держит?

В моем случае это был признак того, что файловая система повреждена. Запуск Disk Utility (или, если этого было недостаточно, DiskWarrior) решил проблему и снова сделал диск извлекаемым.

  • 1 В моем случае система не была повреждена.
  • Вряд ли. Скорее всего, у Spotlight или другого приложения или сервиса есть блокировка на диске.

Напомним, командная строка в терминале:

Скриншоты обоих с одним и тем же поиском.



Есть альтернатива графическому интерфейсу в приложение CLI lsof :
fseventer это отличная утилита для мониторинга доступа к файловой системе для различные цели. Он работает с правами суперпользователя ( sudo ), поэтому он видит весь доступ для чтения / записи всех смонтированных файловых систем и представляет их в очень четком обзоре.

Определите, к какому файлу осуществляется доступ (с помощью lsof или fseventer ). В моем случае это был классический файл Mac OS с ветвью ресурсов, которая оставалась открытой, вероятно, из-за того, что на ней завис какой-то фоновый процесс разбора диска (Spotlight, QuickLook и т.п.).

Удалите проблемный файл / папку.

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

Рестарт. Затем попробуйте размонтировать снова. С тех пор громкость снова работала нормально. Обычные операции монтирования, размонтирования, чтения / записи. Только когда файл действительно был открыт пользовательским процессом, размонтирование было предотвращено. И снова совершенно нормальное поведение.

Попробуйте перезапустить Finder. Вот это работает

  • Не уверен, почему это было отклонено; В моем случае QuickLook и mds удерживали его (несмотря на то, что активные окна поиска не открыты). Я мог бы перезапустить mds, но qlmanage -r сказал, что это "сброс Quicklookd", но он все еще держал файл открытым в соответствии с lsof +D /path/to/volume . Повторный запуск искателя прояснил это, и я смог извлечь том.

Читайте также: