Sobes.tech
Middle+

Hogyan ölünk meg egy folyamatot Linuxban? Mit tegyünk, ha a kill pid nem segít?

sobes.tech MI

Válasz az MI-től

Linuxban egy folyamatot a kill parancs és a PID (folyamatazonosító) megadásával lehet megölni:

kill <pid>

Alapértelmezés szerint a SIGTERM (15) jelet küldi, ami helyesen befejezi a folyamatot.

Ha a folyamat nem reagál a SIGTERM-re, küldhetünk erősebb jelet, SIGKILL (9), ami kényszeríti a folyamat befejezését:

kill -9 <pid>

Ha még a kill -9 sem segít, a folyamat lehet, hogy "D" (megszakíthatatlan alvás) állapotban van, például várakozik bemenet/kimenet vagy kernel szinten blokkolva. Ebben az esetben a folyamat nem ölhető meg, amíg a rendszerhívás be nem fejeződik vagy a forrás nem szabadul fel.

Diagnosztikához használhatók:

  • ps aux | grep <pid> — a folyamat állapotának megtekintése (STAT oszlop)
  • top vagy htop — folyamatfigyelés
  • strace -p <pid> — a folyamat rendszerhívásainak követése

Ha a folyamat hardver vagy fájlrendszer problémák miatt lefagyott, a problémát ezen a szinten kell megoldani.