杀不掉进程的原因可能有两种: 1)此进程是僵尸进程 2)此进程是"核心态"进程 解决方案: ps -A -ostat,ppid,pid,cmd | grep -e'^[Zz]' 或者 先找到该进程号,再进入到“/proc/进程号”目录下,执行“cat status”命令可以查询到指定进程的父进程 cat /proc/[pid]/status | grep PPid //根据子进程号(...
a、该进程处于"Zombie"状态(使用ps命令返回defunct的进程)。此时进程已经释放所有资源,但还未得到其父进程的确认。"Zombie"进程要等到下次重启时才会消失,但它的存在不会影响系统性能。 b、 该进程处于"kernel mode"(核心态)且在等待不可获得的资源。处于核心态的进程忽略所有信号处理,因此对于这些一直处于核心态的...
1.该进程是僵尸进程(STAT z),此时进程已经释放所有的资源,但是没有被父进程释放。僵尸进程要等到父进程结束,或者重启系统才可以被释放。 2.进程处于“核心态”,并且在等待不可获得的资源,处于“核心态 ”的资源默认忽略所有信号。只能重启系统。 kill 只能杀死处于用户状态的进程。 下面是一个自测试例子: #include...
pkill -9 “进程名(字符串)” 方法三:检查系统进程此外,我们也可以直接kill掉与进程相关的系统进程来避免kill掉进程,比如kill掉systemd的进程,执行下面命令即可: systemctl kill -s KILL 注意事项 强制杀死进程可能会对系统造成一定的影响,因此在使用kill -9命令时需要谨慎。 在使用pkill命令时,需要确保指定的进程...
kill -9 PID 是操作系统从内核级别强制杀死一个进程. kill -15 PID 可以理解为操作系统发送一个通知告诉应用主动关闭. SIGNTERM(15) 的效果是正常退出进程,退出前可以被阻塞或回调处理。并且它是Linux缺省的程序中断信号。 大部分程序接收到SIGTERM信号后,会先释放自己的资源,然后再停止。但是也有程序可以在接受到...
1.该进程是僵尸进程(STAT z),此时进程已经释放所有的资源,但是没有被父进程释放。 僵尸进程要等到父进程结束,或者重启系统才可以被释放。 2.进程处于“内核态”,并且在等待不可获得的资源,处于“内核态 ”的资源默认忽略所有信号,只能重启系统解决。
最近在部署环境时,遇到kill -9杀不掉进程的问题,在此做一记录以供学习: 杀不掉进程的原因:这个是僵尸进程 解决办法: 1.找出僵尸进程: ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]' 命令注解:-A 参数列出所有进程 -o 自定义输出字段 我们设定显示字段为 stat(状态), ppid(进程父id), pid(进程id...
kill -9 杀不掉进程 以下两种情况kill -9发送信号不起作用: a、该进程处于"Zombie"状态(使用ps命令返回defunct的进程)。此时进程已经释放所有资源,但还未得到其父进程的确认。"Zombie"进程要等到下次重启时才会消失,但它的存在不会影响系统性能。 b、 该进程处于"kernel mode"(核心态)且在等待不可获得的资源。
init 进程进行清理。但是如果 init 进程出现故障或者其他原因,可能会导致 Zombie 进程无法被清理。