# How to Kill Zombie Processes

# 问题介绍

正常情况下用户不需要管理僵尸进程Zombie Process,但有时候僵尸进程还是会占用资源,譬如题主遇到的情况是Zombie Process占用了显卡的显存,导致启动新的训练任务就会内存溢出,无法进行模型的训练。

僵尸进程通常由网络文件系统不响应,内核bug,硬件bug导致。

# 解决办法

查看系统中的僵尸进程,及其对应的父进程:

$ ps axo stat,ppid,pid,comm | grep -w defunct
# Z 555 10242 Damn-Zombie < defunct >

根据父进程号向其发送SIGCHLD信号,尝试杀死PPID下的僵尸进程:

$ sudo kill -s SIGCHLD 555

如果SIGCHLD还是没能终止僵尸进程,尝试使用

$ sudo kill -9 555

不过这个命令会杀死父进程555及其下的所有子进程。

(adsbygoogle = window.adsbygoogle || []).push({});

1.https://unix.stackexchange.com/questions/81285/how-to-kill-a-process-which-cant-be-killed-without-rebooting (opens new window)