linux删除僵尸进程

1 linux kill命令

列出所有可用信号:kill -l
常用信号:
HUP 1:重新加载进程。
INT 2:中断(同 Ctrl + C)
QUIT 3:退出(同 Ctrl + )
KILL 9:强制终止
TERM 15 :终止

2 kill关不掉进程

kill 命令实际是向进程发送信号,-9 表示无条件退出,但由进程自行决定是否退出,即 kill -9 终止不了系统进程和守护进程。

2.1 不能kill的原因

(1)进程已经成为僵尸进程(Zombie)
当它的父进程将它回收或将它的父进程kill掉,ps输出看不到。
(2)进程正处在内核状态中
Linux进程运行时分内核和用户两种状态,当进程进入内核状态后,会屏蔽所有信号,包括SIGKIL,因而kill -9无效。

2.2 解决办法

(1)查看进程: ps aux|grep python3(我这里主要是运行的python3程序)
在这里插入图片描述
(2)cd /proc/46127
cat status
linux删除僵尸进程_第1张图片
(3)kill -9 父进程号(PPid) 子进程号(Tgid)
如上图,执行:kill -9 46126 46127 即可
在这里插入图片描述

你可能感兴趣的:(Tips,linux,运维,服务器)