如何在Linux数据中心服务器上查找和杀死僵尸进程?虽然僵尸进程不会像运行流氓应用程序那样占用宝贵的资源,但它们可能会构成威胁。怎么算威胁?当一个进程成为僵尸进程时,它会保留其进程ID(PID)。由于Linux系统的PID数量有限(但数量很多),如果足够多的PID变成僵尸,其他进程就无法启动。发生这种情况的可能性非常小。然而,更重要的是,僵尸进程表明应用程序出了问题,并且程序中可能存在错误。数据中心软件中的错误不应被容忍,需要加以解决。您可能需要检查并杀死僵尸进程才能解决该问题。那么当一个进程变成僵尸时你会怎么做?你找到并杀死那些僵尸。这是如何做的。查找僵尸进程首先要做的是查找僵尸进程。谢天谢地,多亏了ps命令,这很容易。通过grep显示ps命令的输出,列出STAT为Z(僵尸)的所有进程。打开终端窗口并执行以下命令:psaux|grep'Z'上述命令的输出将在输出中列出所有包含Z的进程(图A)。图A正如你所看到的,许多正在运行的进程都处于僵尸状态。该命令还将列出在其输出中具有字母Z的所有进程,因此您希望忽略在STAT列中没有Z的任何进程。杀死僵尸进程我们想使用kill命令终止那些僵尸进程。命令的输出将包括所有僵尸进程的PID,因此要杀死其中一个,只需执行命令:killPID其中PID是相关进程的进程ID。所以如果要终止僵尸雷鸟进程(其PID为20589),命令为:kill20589即可。您绝对可以编写一个bash脚本来自动执行此任务,尽管它可能会终止必要的进程。由于存在这种风险,我始终建议您手动处理此任务。鉴于我们正在处理生产级数据中心服务器(尽管我在桌面系统上进行演示),这一点尤其正确。如果您看到服务和应用程序崩溃,您应该检查僵尸进程并杀死它们。一旦您知道哪些进程是僵尸进程,请提交错误报告,或联系开发人员并让他们知道(尤其是在应用程序频繁崩溃的情况下)。原标题:HowtofindandkillzombieprocessesonyourLinuxdatacenterservers,作者:JackWallen
