Mokėjimo būdai Abuse

Ошибка įrenginys arba ištekliai užimti

29.01.2024, 22:39

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.

Kodėl pasirodo klaida "Įrenginys arba ištekliai užimti"?

Š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ą.

Kaip ištaisyti įrenginio arba išteklių užimtumą?

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.