Middle+
Ako ukončiť proces v Linuxe? Čo robiť, ak kill pid nepomáha?
sobes.tech AI
Odpoveď od AI
V Linuxe je možné proces ukončiť pomocou príkazu kill a zadania PID (identifikátora procesu):
kill <pid>
Predvolene sa odosiela signál SIGTERM (15), ktorý správne ukončí proces.
Ak proces nereaguje na SIGTERM, môžete poslať silnejší signál SIGKILL (9), ktorý nútene ukončí proces:
kill -9 <pid>
Ak ani kill -9 nepomôže, môže byť proces v stave "D" (neprerušiteľný spánok), napríklad čaká na vstup/výstup alebo je zablokovaný na úrovni jadra. V takom prípade nie je možné proces ukončiť, kým sa systémové volanie nedokončí alebo sa neuvoľní zdroj.
Na diagnostiku je možné použiť:
ps aux | grep <pid>— na zistenie stavu procesu (stĺpec STAT)topalebohtop— na sledovanie procesovstrace -p <pid>— na sledovanie systémových volaní procesu
Ak je proces zaseknutý kvôli problémom s hardvérom alebo súborovým systémom, je potrebné problém riešiť na tejto úrovni.