Көбінесе флэш-дискілермен, дискілермен, кескіндермен жұмыс істегенде, қате құрылғы немесе ресурс бос емес пайда болады. Ол сыртқы дискіні, бөлімді ажыратуға әрекет жасағанда, сондай-ақ файлды жылжытуға немесе жоюға әрекет жасағанда көрсетілуі мүмкін. Бұл мақалада біз бұл қатенің неліктен пайда болуы мүмкін екендігі туралы, сондай-ақ оны жою жолдары туралы айтатын боламыз.
Ағылшын тілінен орыс тіліне аударылған хабарлама құрылғының немесе ресурстың бос емес екенін білдіреді. Толығырақ түсіндіру үшін, жоюға әрекеттеніп жатқан файлды немесе ажырату қажет дискіні әлі де іске қосылған бағдарламалардың бірі пайдалануда. Бұл бағдарлама әлі жұмысын аяқтамағандықтан, ілулі тұрғандықтан немесе оның жұмыс істеуі кезінде кейбір мәселелер туындауы мүмкін.
Қате басқа процесс немесе бағдарлама пайдаланып жатқан файлда әрекетті орындауға әрекет жасағанда орын алуы мүмкін. Көбінесе мәселе ашық файлға, құлыпталған құрылғыға немесе желі қосылымына байланысты. Флэш-диск жағдайында оны компьютерден жай ғана алып тастауға болады, бірақ бұл шешім емес, себебі сақталмаған деректерді жоғалту ықтималдығы жоғары. Бұл мәселені шешу жолдары бар.
Алдымен, осы файлды немесе алынбалы құралдағы файлдардың бірін пайдалана алатын бағдарламаларды жабыңыз. Егер бейне файлдардың бірі ойнатылып жатса, ойнатқышты жабу керек. Осыдан кейін ғана операцияларды қайта орындауға тырысыңыз.
Операцияны орындауға қандай бағдарлама кедергі келтіретінін білмесеңіз, lsof пәрменін пайдалану арқылы өте оңай білуге болады. Тек оны іске қосыңыз және медианың бекіту нүктесіне қатысты жазбаларды ғана сүзіңіз:
lsof | grep /media/sergiy/83AE-2346
Сондай-ақ утилитаның өзінде қажетті процестерді сүзуге болады, +D опциясын қолдануға болады, бұл одан да жақсы, себебі ол жүйелік қызметтерді көрсетпейді, бірақ тек тоқтатылуы керек бағдарламаны көрсетеді:
lsof +D /media/sergiy/83AE-2346
Осылайша сіз дискіміздегі файлдарды пайдаланатын барлық процестерді көресіз және оларды өлтіру пәрменімен тоқтатасыз. Біздің жағдайда PID 5616 тотем ойнатқышын тоқтату керек:
$ kill -TERM 5616
Қандай процестер файлды пайдаланып жатқанын қалай көруге болады? Термобекіткіш пәрменін пайдаланыңыз:
fuser -vm /home/sergiy/83AE-2346
Сіз барлық қажетті ақпаратты көресіз: оның атынан процесс іске қосылған пайдаланушы көрсетіледі. Сіз оны дәл осылай тоқтата аласыз:
Егер сіз барлық бағдарламаларды жапсаңыз және ол көмектеспесе, осы пәрменді пайдаланып жүйелік файлдың кэшін тазалауға болады:
sync && echo 2 > /proc/sys/vm/drop_caches
Бар болғаны.