Способи оплати Abuse

Помилка пристрій або ресурс зайнятий

29.01.2024, 22:39

Нерідко під час роботи з флешками, дисками, образами з'являється помилка device or resource busy. Вона може виводиться, коли ви намагаєтеся відмонтувати зовнішній диск, розділ, а також під час спроби перемістити або видалити файл. У цій статті поговоримо, чому може виникати ця помилка, а також шляхи її усунення.

Чому з'являється помилка device or resource busy

У перекладі з англійської на російську мову повідомлення означає, що пристрій або ресурс зайнято. Якщо пояснювати детальніше - файл, який ви намагаєтеся видалити або диск, який потрібно відмонтувати, ще використовується однією із запущених програм. Це могло статися тому, що програма ще не завершила свою роботу, зависла, виникли будь-які проблеми в процесі її роботи.

Помилка може виникнути під час спроби виконати операцію з файлом, який уже використовується іншим процесом або програмою. Часто проблема пов'язана з відкритим файлом, заблокованим пристроєм, мережевим з'єднанням. У випадку з флешкою ви можете просто вийняти її з ПК, але це не рішення, тому що висока ймовірність втратити не збережені дані. Є шляхи обходу цієї проблеми.

Як виправити device or resource busy?

Перше - закрити програми, які можуть використовувати цей файл або один із файлів на знімному носії. Якщо відтворюється один із відеофайлів, то програвач треба закрити. І тільки після цього пробувати ще раз виконувати операції.

Якщо ви не знаєте, яка програма заважає вам виконати операцію, то це можна дуже просто дізнатися за допомогою команди lsof. Просто виконайте її і відсійте тільки ті записи, які відносяться до точки монтування вашого носія:

lsof | grep /media/sergiy/83AE-2346

Також можна відсіяти потрібні процеси в самій утиліті, використовуйте опцію +D, так навіть краще, тому що вона не буде показувати системні служби, а відобразить тільки програму, яку треба завершити:

lsof +D /media/sergiy/83AE-2346

Так ви побачите всі процеси, які використовують файли на нашому носії, і завершите їх за допомогою команди kill. У нашому випадку треба завершити плеєр totem з PID 5616:

$ kill -TERM 5616

Як подивитися, які процеси використовують файл? Використовуйте команду fuser:

fuser -vm /home/sergiy/83AE-2346

Ви побачите всю необхідну інформацію: відображатиметься користувач, від імені якого запущено процес. Так само можна його завершити:

Якщо ви закрили всі програми, але це не допомогло, можна спробувати очистити файловий кеш системи за допомогою такої команди:

sync && echo 2 > /proc/sys/vm/drop_caches

На цьому все.