Dažnai dirbant su "flash" atmintinėmis, diskais, atvaizdais pasirodo klaida Įrenginys arba ištekliai užimti. Ji gali būti rodoma, kai bandote atjungti išorinį diską ar skirsnį arba kai bandote perkelti ar ištrinti failą. Šiame straipsnyje aptarsime, kodėl gali atsirasti ši klaida, ir jos taisymo būdus.
Šis pranešimas reiškia, kad įrenginys arba išteklius yra užimtas. Išsamiau paaiškinus - failą, kurį bandote ištrinti, arba diską, kurį reikia atjungti, vis dar naudoja viena iš veikiančių programų. Taip gali būti todėl, kad programa dar nebaigė savo darbo, užstrigo arba jos darbo procese iškilo kokių nors problemų.
Klaida gali atsirasti bandant atlikti operaciją su failu, kurį jau naudoja kitas procesas ar programa. Dažnai problema susijusi su atidarytu failu, užrakintu įrenginiu, tinklo ryšiu. Jei tai yra "flash" atmintinė, galite ją tiesiog išimti iš kompiuterio, tačiau tai nėra išeitis, nes yra didelė tikimybė prarasti neišsaugotus duomenis. Yra būdų, kaip apeiti šią problemą.
Pirmiausia reikia uždaryti programas, kurios gali naudoti failą arba vieną iš failų, esančių keičiamoje laikmenoje. Jei atkuriamas vienas iš vaizdo failų, turėtumėte uždaryti grotuvą. Ir tik po to bandykite vėl atlikti operacijas.
Jei nežinote, kuri programa trukdo atlikti operaciją, tai galite labai lengvai išsiaiškinti naudodami komandą lsof. Tiesiog paleiskite ją ir perskaitykite tik tuos įrašus, kurie susiję su jūsų laikmenos prijungimo tašku:
lsof | grep /media/sergiy/83AE-2346
Tai dar geriau, nes nebus rodomos sistemos paslaugos, o tik programa, kurią reikia nutraukti:
lsof +D /media/sergiy/83AE-2346
Taip pamatysite visus procesus, kurie naudoja mūsų laikmenoje esančius failus, ir galėsite juos nutraukti naudodami komandą "kill". Mūsų atveju turime nutraukti toteminį grotuvą, kurio PID 5616:
$ kill -TERM 5616
Kaip pamatyti, kurie procesai naudoja failą? Naudokite komandą fuser:
fuser -vm /home/sergiy/83AE-2346
Pamatysite visą reikiamą informaciją: bus rodomas naudotojas, kurio vardu vykdomas procesas. Tokiu pat būdu galite jį uždaryti:
Jei uždarėte visas programas, bet tai nepadėjo, galite pabandyti išvalyti sistemos failų talpyklą, naudodami tokią komandą:
sync && echo 2 > /proc/sys/vm/drop_caches
Tai kol kas viskas.