如何杀死服务器出现的僵尸进程

服务器 0

今天在服务器上进行深度学习训练的时候,发现已经结束程序代码,但是GPU还是显示显存在运行。
为了解决这些问题,网上查找了大量的资料,发现是因为僵尸进程的原因,因此记录相关的解决步骤,方便自己和大家。

如何杀死僵尸进程

要杀死僵尸进程,通常需要找到僵尸进程的父进程,然后使用kill命令杀死父进程。以下是具体的步骤:

  1. 使用ps命令查看僵尸进程,使用ps命令查看系统中所有进程的状态信息
ps aux | grep 'Z'
  1. 确定僵尸进程的相关信息:
  2. 使用ps命令获取僵尸进程的详细信息,包括父进程ID(PPID)、进程ID(PID)以及命令行等。

可以使用

ps -e -o stat,ppid,pid,cmd | egrep [Zz]

来筛选出僵尸进程。
3.杀死僵尸进程的父进程:

找到僵尸进程的父进程ID(PID),可以使用

cat /proc/PID/status

来查看僵尸进程的父进程ID。
4.处理孤儿进程:

如果父进程是init进程,则不能直接杀死父进程,因为这可能会导致系统崩溃。
在这种情况下,可以尝试将僵尸进程挂起,使其不会占用系统资源,直到init进程回收它们。
可以使用

kill -HUP PID

来挂起进程。

也许您对下面的内容还感兴趣: