Нередко во время работы с флешками, дисками, образами появляется ошибка device or resource busy. Она может выводится, когда вы пытаетесь отмонтировать внешний диск, раздел, а также при попытке переместить или удалить файл. В этой статье поговорим, почему может возникать данная ошибка, а также пути её устранения.
В переводе с английского на русский язык сообщение означает, что устройство или ресурс занято. Если объяснять более подробно - файл, который вы пытаетесь удалить или диск, который нужно отмонтировать, ещё используется одной из запущенных программ. Это могло произойти потому, что программа ещё не завершила свою работу, зависла, возникли какие-либо проблемы в процессе её работы.
Ошибка может возникнуть при попытке выполнить операцию с файлом, который уже используется другим процессом или программой. Часто проблема связана с открытым файлом, заблокированным устройством, сетевым соединением. В случае с флешкой вы можете просто вынуть её из ПК, но это не решение, потому что высока вероятность потерять не сохранённые данные. Есть пути обхода этой проблемы.
Первое - закрыть программы, которые могут использовать этот файл или один из файлов на съёмном носителе. Если воспроизводится один из видеофайлов, то проигрыватель надо закрыть. И только поле этого пробовать ещё раз выполнять операции.
Если вы не знаете какая программа мешает вам выполнить операцию, то это можно очень просто узнать с помощью команды lsof. Просто выполните её и отсейте только те записи, которые относятся к точке монтирования вашего носителя:
Также можно отсеять нужные процессы в самой утилите, используйте опцию +D, так даже лучше, потому что она не будет показывать системные службы, а отобразит только программу, которую надо завершить:
Так вы увидите все процессы, которые используют файлы на нашем носителе, и завершить их с помощью команды kill. В нашем случае надо завершить плеер totem с PID 5616:
Как посмотреть, какие процессы используют файл? Используйте команду fuser:
Вы увидите всю необходимую информацию: будет отображаться пользователь, от имени которого запущен процесс. Точно так же можно его завершить:
Если вы закрыли все программы, но это не помогло, можно попытаться очистить файловый кэш системы с помощью такой команды:
На этом всё.