首先,确保你正在尝试杀掉的进程ID(PID)是正确的。你可以使用ps命令来查看当前运行的进程列表,例如: bash ps aux | grep [进程名或关键字] 或者,使用pidof、pgrep等工具来获取进程ID。 同时,使用ps -p PID -o stat=来查看进程的状态。确保进程不是已经处于僵尸状态(Z)或已经终止(X)。 检查进程是否处于僵尸...
杀不掉进程的原因可能有两种: 1)此进程是僵尸进程 2)此进程是"核心态"进程 解决方案: ps -A -ostat,ppid,pid,cmd | grep -e'^[Zz]' 或者 先找到该进程号,再进入到“/proc/进程号”目录下,执行“cat status”命令可以查询到指定进程的父进程 cat /proc/[pid]/status | grep PPid //根据子进程号(...
kill -9发送SIGKILL信号将其终止,但是以下两种情况不起作用: a、该进程处于"Zombie"状态(使用ps命令返回defunct的进程)。此时进程已经释放所有资源,但还未得到其父进程的确认。"zombie"进程要等到下次重启时才会消失,但它的存在不会影响系统性能。 b、 该进程处于"kernel mode"(核心态)且在等待不可获得的资源。处...
kill -9 发送SIGKILL信号给进程,将其终止,但对于以下两种情况不适用 1.该进程是僵尸进程(STAT z),此时进程已经释放所有的资源,但是没有被父进程释放。僵尸进程要等到父进程结束,或者重启系统才可以被释放。 2.进程处于“核心态”,并且在等待不可获得的资源,处于“核心态 ”的资源默认忽略所有信号。只能重启系统。
-o 自定义输出字段 我们设定显示字段为 stat(状态), ppid(进程父id), pid(进程id),cmd(命令)这四个参数 因为状态为 z或者Z的进程为僵尸进程。 所以我们使用grep抓取stat状态为zZ进程,运行结果参考如下: Z 12334 12339 /path/cmd 这时,我们可以使用 kill -HUP 12339来杀掉这个僵尸进程 运行后,可以再次运行 ...
kill -9 发送SIGKILL信号给进程将其终止,但对于以下两种情况不适用:1.该进程是僵尸进程(STAT z),此时进程已经释放所有的资源,但是没有被父进程释放。僵尸进程要等到父进程结束,或者重启系统才可以被释放。2.进程处于“内核态”,并且在等待不可获得的资源,处于“内核态 ”的资源默认忽略所有信号...
kill -9 <PID> 如果以上方法还是不能解决kill进程的问题,我们还可以试着通过重启服务器来解决,系统重启后,进程会被自动终止,然后再启动新的服务就可以了。 方法二:使用pkill命令另外,我们也可以使用pkill命令来kill掉进程。pkill是以进程的进程名(字符串)来kill的,使用起来也非常的方便,下面是范例: pkill -9 “...
最近在部署环境时,遇到kill -9杀不掉进程的问题,在此做一记录以供学习: 杀不掉进程的原因:这个是僵尸进程 解决办法: 1.找出僵尸进程: ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]' 命令注解:-A 参数列出所有进程 -o 自定义输出字段 我们设定显示字段为 stat(状态), ppid(进程父id), pid(进程id...
要解决在Linux环境下使用kill -9命令无法杀死僵尸进程的问题,首先要利用ps和grep命令定位该进程。具体操作如下:使用grep命令查找stat状态为zZ的进程,运行结果示例如下。在找到僵尸进程后,尝试使用kill -HUP命令进行杀死。若此命令无效,可以尝试杀死其父进程解决问题。例如,若僵尸进程父进程pid为12334,则...