Linux进程经常误入歧途,什么都不做,甚至不耗用CPU周期。虽然僵尸进程不像运行中的流氓应用程序那样占用宝贵资源,但可能会构成威胁。如何构成威胁?某个进程成为僵尸进程时,它保留其进程ID(PID)。由于Linux系统的PID数量有限(不过数量很大),如果足够的PID沦为僵尸,其他进程就无法启动。
宜黄ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!
发生这种情况的可能性非常小。然而更重要的是,僵尸进程表明应用程序出现了岔子,某个程序中可能存在着错误。不应容忍数据中心软件上的错误,需要加以解决。你可能需要检查并杀死僵尸进程,才能解决问题。
因此,某个进程成为僵尸进程时,你怎么做?你要找到并杀死那些僵尸进程。下面教你怎么做。
找出僵尸进程
首先要做的是找出僵尸进程。幸好,由于ps命令,这很简单。通过grep显示ps命令的输出,列出STAT是Z(代表僵尸)的任何进程。打开终端窗口,执行下列命令:
- ps aux | grep 'Z'
上述命令的输出将列出输出中包含Z的任何进程(图A)。
图A
如你所见,许多运行中的进程呈僵尸状态。该命令还将列出输出中包含字母Z的任何进程,因此你要忽略STAT列中没有Z的任何进程。
杀死僵尸进程
我们想要使用kill命令来终结那些僵尸进程。命令的输出将包括所有僵尸进程的PID,因此想终结其中一个,只要执行命令:
- kill PID
其中PID是相关进程的进程ID。因此,如果你想终终结沦为僵尸的thunderbird进程(其PID是20589),命令是:
- kill 20589
就是这样。
你完全可以编写一个bash脚本来自动处理这项任务,不过可能会杀死必要进程。由于存在这个风险,我总是建议你手动处理此任务。考虑到我们面对的是生产级数据中心服务器(不过我在桌面系统上进行了演示),尤其应该这样。
如果你发现服务和应用程序崩溃,应该检查有无僵尸进程,并终结它们。一旦你知道了哪些进程是僵尸进程,应提交错误报告,或者联系并告知开发人员(如果应用程序常常崩溃,更应如此)。
分享题目:如何找到并杀死Linux数据中心服务器上的僵尸进程?
分享链接:http://www.shufengxianlan.com/qtweb/news43/405093.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联