Често по време на работа с флаш памети, дискове, изображения се появява грешката устройство или ресурс зает. Тя може да се покаже, когато се опитвате да демонтирате външен диск или дял, или когато се опитвате да преместите или изтриете файл. В тази статия ще обсъдим причините за появата на тази грешка, както и начините за нейното отстраняване.
Съобщението означава, че дадено устройство или ресурс е зает. Ако обясните по-подробно - файлът, който се опитвате да изтриете, или дискът, който трябва да демонтирате, все още се използва от някоя от стартираните програми. Това може да се дължи на факта, че програмата все още не е завършила работата си, замръзнала е или има някакви проблеми в процеса на нейната работа.
Грешка може да възникне при опит за извършване на операция върху файл, който вече се използва от друг процес или програма. Често проблемът е свързан с отворен файл, заключено устройство, мрежова връзка. В случай на флаш устройство можете просто да го извадите от компютъра, но това не е решение, защото има голяма вероятност да загубите незаписани данни. Съществуват начини за заобикаляне на този проблем.
Първото нещо, което трябва да направите, е да затворите програмите, които може да използват файла или някой от файловете на сменяемия носител. Ако се възпроизвежда някой от видеофайловете, трябва да затворите плейъра. И едва след това опитайте да извършите операциите отново.
Ако не знаете коя програма ви пречи да извършите дадена операция, можете да разберете това много лесно с помощта на командата 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
Това е всичко за сега.