Hoe beëindig je een proces in Linux? Wat te doen als kill pid niet helpt?
sobes.tech AI
Antwoord van AI
In Linux kan een proces worden beëindigd met het commando kill en het specificeren van de PID (proces-ID):
kill <pid>
Standaard wordt het signaal SIGTERM (15) verzonden, dat het proces correct beëindigt.
Als het proces niet reageert op SIGTERM, kan een sterker signaal, SIGKILL (9), worden verzonden, dat het proces geforceerd beëindigt:
kill -9 <pid>
Als zelfs kill -9 niet helpt, bevindt het proces zich mogelijk in de staat "D" (ononderbroken slaap), bijvoorbeeld wachtend op invoer/output of geblokkeerd op kernelniveau. In dat geval kan het proces niet worden beëindigd totdat de systeemoproep is voltooid of de resource is vrijgegeven.
Voor diagnose kunnen de volgende commando's worden gebruikt:
ps aux | grep <pid>— om de status van het proces te bekijken (kolom STAT)topofhtop— voor procesmonitoringstrace -p <pid>— om de systeemoproepen van het proces te traceren
Als het proces vastloopt door hardware- of bestandssysteemproblemen, moet het probleem op dat niveau worden opgelost.