新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 网络学院 > 操作系统 > Unix系统 > AIX教程 > 正文:AIX僵死(defunct)进程故障分析

AIX僵死(defunct)进程故障分析

新客网 XKER.COM 2008-01-11 来源:新客网Unix系统 佚名 收藏本文

  【新客网aix教程】故障描述:

  S80主机系统出现了大量的僵死(defunct)进程,由于这些进程不能自动终止,导致系统的进程数资源不能释放,因此,假如继续增多,到达系统设定的进程总数,用户的应用和生产将受到影响。

  故障分析:

  在AIX操作系统中,任何进程的结束或终止将会通报其父进程(parent process),父进程会收集子进程的状态信息,并使子进程完全结束。假如父进程不能及时完整地收集该进程的状态信息,则即使子进程结束,系统也会产生一个相同进程号的defunct进程。由于defunct进程对应的进程实际上已经结束,因此,使用kill –9等方法也无法清除干净。

  仔细观察S80系统中的defunct进程,进程用户多为root用户,少数为ORACLE用户,但绝大部分进程的父进程号为1,这表明父进程为系统初始化(init) 进程。经查询IBM系统资料库,指明:系统起机后,假如/etc/inittab文件未被init进程完全执行完,则系统很可能产生defunct进程,因为init进程有可能在等待某些特定进程的运行而不理会其他子进程的结束,从而导致defunct进程的产生。

  仔细查看系统/etc/inittab文件,发现存在如下语句:

  welcome:2:wait:/usr/lib/assist/welcome.launch

  该语句将导致/etc/inittab中其后的语句未能完全运行,因此,需要清除或屏蔽掉该语句。

  故障解决:

  删除/etc/inittab中welcome语句,并重新执行/etc/inittab,系统中的defunct进程被清除,系统进程数被释放,恢复至正常状态。

  如下为操作命令:

  #cp /etc/inttab /etc/inittab.bak

  #rmitab welcome

  #telinit q

  #ps -ef|grep welcome (to find the ‘welcome’ pid#)

  #kill #pid

  #telinit q

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐