← Back to all fixes
kill command does not stop the process
The Issue
`kill <pid>` runs without error but the process is still listed in `ps aux`.
Root Cause
`kill` without flags sends SIGTERM which the process can ignore or handle. A zombie process cannot be killed — it is already dead, waiting for its parent to call wait(). A process in uninterruptible sleep (D state) cannot be killed until the I/O completes.
How to Fix
Use SIGKILL: `kill -9 <pid>` — cannot be caught or ignored by the processCheck process state first: `ps aux | grep <name>` — look at the STAT columnIf state is Z (zombie): kill the parent process insteadIf state is D (disk wait): wait for I/O to complete or check for hung NFS/diskFind PID by name: `pgrep -l nginx` or `pidof nginx`