GPT on Question 13, Sep 22
How do I kill a zombie process in Linux that won't respond to SIGTERM?You can’t kill a zombie process—it has already exited. The zombie is only an entry in the process table waiting for its parent to collect its exit status.
- 1.Confirm it is a zombie and find its parent PID:
ps -o pid,ppid,state,cmd -p <PID>
A state of Z means zombie.
- 2.Ask the parent to reap exited children:
kill -SIGCHLD <PPID>
- 3.If the parent is broken, restart or terminate the parent process:
kill -TERM <PPID> # If necessary: kill -KILL <PPID>
Once the parent exits, the zombie is usually adopted and reaped by PID 1 or a subreaper.
Be careful: killing the parent may disrupt a service or create additional problems. Prefer restarting it through its service manager, for example:
sudo systemctl restart <service>
SIGKILL sent to the zombie itself will do nothing. If the process state is D rather than Z, it is not a zombie—it is blocked in uninterruptible kernel I/O and generally cannot be killed until that operation returns.
Exact recordShowHideThe model id, the run, the verbatim text with line numbers and its full sha256
- Scored
- answered
- Received
- 2026-09-22 09:05:20 UTC
- Run
- 20260922T090022Z-7ff13b
- Served by
- OpenAI · HTTP 200 · finish stop
- Size
- 1,007 characters · 332 tokens out incl. hidden reasoning · 6.4 s
You can’t kill a **zombie process**—it has already exited. The zombie is only an entry in the process table waiting for its parent to collect its exit status.
1. Confirm it is a zombie and find its parent PID:
```bash
ps -o pid,ppid,state,cmd -p <PID>
```
A state of `Z` means zombie.
2. Ask the parent to reap exited children:
```bash
kill -SIGCHLD <PPID>
```
3. If the parent is broken, restart or terminate the parent process:
```bash
kill -TERM <PPID>
# If necessary:
kill -KILL <PPID>
```
Once the parent exits, the zombie is usually adopted and reaped by PID 1 or a subreaper.
Be careful: killing the parent may disrupt a service or create additional problems. Prefer restarting it through its service manager, for example:
```bash
sudo systemctl restart <service>
```
`SIGKILL` sent to the zombie itself will do nothing. If the process state is `D` rather than `Z`, it is not a zombie—it is blocked in uninterruptible kernel I/O and generally cannot be killed until that operation returns.
End of response · 33 lines · 1,007 characters · sha256 fa841a00e2d93b8fb3ac65715d766d5bd6e6dc564c9f729dc2474108ef03da67