位置: IT常识 - 正文

Linux系统中查杀僵尸进程的基本方法讲解(linux查杀webshell)

编辑:rootadmin
这篇文章主要介绍了Linux系统中查杀僵尸进程的基本方法讲解,文中讲到了Linux中处理相关进程的SIGCHLD信号的相关知识,需要的朋友可以参考下... 15-12-19

推荐整理分享Linux系统中查杀僵尸进程的基本方法讲解(linux查杀webshell),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux查看杀死进程命令kill,linux病毒查杀,linux rootkit查杀,linux查看杀毒软件,linux查杀webshell,linux rootkit查杀,linux rootkit查杀,linux如何查杀进程,内容如对您有帮助,希望把文章链接给更多的朋友!

在UNIX 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他, 那么他将变成一个僵尸进程. 在fork()/execve()过程中,假设子进程结束时父进程仍存在,而父进程fork()之前既没安装SIGCHLD信号处理函数调用 waitpid()等待子进程结束,又没有显式忽略该信号,则子进程成为僵尸进程。

一个进程在调用exit命令结束自己的生命的时候,其实它并没有真正的被销毁, 而是留下一个称为僵尸进程(Zombie)的数据结构(系统调用exit,它的作用是 使进程退出,但也仅仅限于将一个正常的进程变成一个僵尸进程,并不能将其完全销毁)

进程的危害由于子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束. 那么会不会因为父进程太忙来不及wait子进程,或者说不知道 子进程什么时候结束,而丢失子进程结束时的状态信息呢? 不会。因为UNⅨ提供了一种机制可以保证只要父进程想知道子进程结束时的状态信息, 就可以得到。这种机制就是: 在每个进程退出的时候,内核释放该进程所有的资源,包括打开的文件,占用的内存等。但是仍然为其保留一定的信息(包括进程号the process ID,退出状态the termination status of the process,运行时间the amount of CPU time taken by the process等)。直到父进程通过wait / waitpid来取时才释放. 但这样就导致了问题,如果进程不调用wait / waitpid的话,那么保留的那段信息就不会释放,其进程号就会一直被占用,但是系统所能使用的进程号是有限的,如果大量的产生僵死进程,将因为没有可用的进程号而导致系统不能产生新的进程. 此即为僵尸进程的危害,应当避免。

1、如何查看僵尸进程?如何查看linux系统上的僵尸进程,如何统计有多少僵尸进程?

代码如下:#ps -ef | grep defunct

或者查找状态为Z的进程,Z就是代表zombie process,僵尸进程的意思。

Linux系统中查杀僵尸进程的基本方法讲解(linux查杀webshell)

另外使用top命令查看时有一栏为S,如果状态为Z说明它就是僵尸进程。

代码如下:Tasks: 95 total, 1 running, 94 sleeping, 0 stopped, 0 zombie

top命令中也统计了僵尸进程。或者使用下面的命令:

代码如下:ps -ef | grep defunct | grep -v grep | wc -l

2、如何杀死僵尸进程?一般僵尸进程很难直接kill掉,不过您可以kill僵尸爸爸。父进程死后,僵尸进程成为”孤儿进程”,过继给1号进程init,init始终会负责清理僵尸进程.它产生的所有僵尸进程也跟着消失。

代码如下:ps -e -o ppid,stat | grep Z | cut –d” ” -f2 | xargs kill -9

代码如下:kill -HUP `ps -A -ostat,ppid | grep -e ’^[Zz]‘ | awk ’{print $2}’`

当然您可以自己编写更好的shell脚本,欢迎与大家分享。

另外子进程死后,会发送SIGCHLD信号给父进程,父进程收到此信号后,执行waitpid()函数为子进程收尸。就是基于这样的原理:就算父进程没有调用wait,内核也会向它发送SIGCHLD消息,而此时,尽管对它的默认处理是忽略,如果想响应这个消息,可以设置一个处理函数。

3、如何避免僵尸进程?处理SIGCHLD信号并不是必须的。但对于某些进程,特别是服务器进程往往在请求到来时生成子进程处理请求。如果父进程不等待子进程结 束,子进程将成为僵尸进程(zombie)从而占用系统资源。如果父进程等待子进程结束,将增加父进程的负担,影响服务器进程的并发性能。在Linux下 可以简单地将 SIGCHLD信号的操作设为SIG_IGN。 signal(SIGCHLD,SIG_IGN); 这样,内核在子进程结束时不会产生僵尸进程。这一点与BSD4不同,BSD4下必须显式等待子进程结束才能释放僵尸进程

或者

用两次fork(),而且使紧跟的子进程直接退出,是的孙子进程成为孤儿进程,从而init进程将负责清除这个孤儿进程。

本文链接地址:https://www.jiuchutong.com/zhishi/267682.html 转载请保留说明!

上一篇:mac系统的电脑怎么切换城市天气? mac切换其他城市的天气的技巧(mac系统小技巧)

下一篇:如何阻止windows更新驱动程序(如何阻止windows10升级到11)

  • 苹果降低白点值在哪里(苹果降低白点值需要开吗)

    苹果降低白点值在哪里(苹果降低白点值需要开吗)

  • 华为p40发布时间(华为p30上市时间和价格)

    华为p40发布时间(华为p30上市时间和价格)

  • garageband可以删除吗(garageband有安卓版吗)

    garageband可以删除吗(garageband有安卓版吗)

  • 只读文件怎么保存(只读文件怎么保存到手机)

    只读文件怎么保存(只读文件怎么保存到手机)

  • 路由器怎么隐藏不被别人发现(电视柜路由器怎么隐藏)

    路由器怎么隐藏不被别人发现(电视柜路由器怎么隐藏)

  • 手机储存异常,请删除账号重试(手机储存异常怎么办)

    手机储存异常,请删除账号重试(手机储存异常怎么办)

  • 怎样改微信号码(怎么改微信号码)

    怎样改微信号码(怎么改微信号码)

  • 为什么手机充到80就充不进去了(为什么手机充到97就充不进去了)

    为什么手机充到80就充不进去了(为什么手机充到97就充不进去了)

  • 电脑开始键是哪个(电脑开始键叫什么)

    电脑开始键是哪个(电脑开始键叫什么)

  • 苹果的低数据模式有什么用(苹果的低数据模式省电吗)

    苹果的低数据模式有什么用(苹果的低数据模式省电吗)

  • 笔记本为什么很少用雾面屏(笔记本为什么很少用AMD显卡)

    笔记本为什么很少用雾面屏(笔记本为什么很少用AMD显卡)

  • 液位控制器的基本原理(液位控制器选型)

    液位控制器的基本原理(液位控制器选型)

  • 荣耀9青春版是什么充电接口(荣耀9青春版是安卓多少)

    荣耀9青春版是什么充电接口(荣耀9青春版是安卓多少)

  • 积目怎么查找人(积目里怎么搜索一个人)

    积目怎么查找人(积目里怎么搜索一个人)

  • apple id验证失败是怎么回事(apple id验证失败连接服务器时出错)

    apple id验证失败是怎么回事(apple id验证失败连接服务器时出错)

  • iphone能不能自动重拨(iPhone能不能自动调节亮度)

    iphone能不能自动重拨(iPhone能不能自动调节亮度)

  • 比心为什么关注失败(比心关注的人上线会有提示吗)

    比心为什么关注失败(比心关注的人上线会有提示吗)

  • 手机圆圈1怎么打(手机圆圈1怎么输入)

    手机圆圈1怎么打(手机圆圈1怎么输入)

  • 手机关机闹钟还响吗(手机关机闹钟还有用吗)

    手机关机闹钟还响吗(手机关机闹钟还有用吗)

  • 华为手机如何截屏(华为手机如何截长图)

    华为手机如何截屏(华为手机如何截长图)

  • 西游记的故事主题曲(西游记的故事主要讲了什么)

    西游记的故事主题曲(西游记的故事主要讲了什么)

  • 豆瓣app怎么写短评(豆瓣app怎么写短文赚钱)

    豆瓣app怎么写短评(豆瓣app怎么写短文赚钱)

  • 苹果升级ios13怎么降回去(苹果13版本更新后如何?)

    苹果升级ios13怎么降回去(苹果13版本更新后如何?)

  • vue普通加密以及国密SM2、SM3、sm4的使用(vue前端加密)

    vue普通加密以及国密SM2、SM3、sm4的使用(vue前端加密)

  • python中有哪些比较操作(python中的比较)

    python中有哪些比较操作(python中的比较)

  • 在建工程转固定资产需要交税吗
  • 累进税率的税种有哪些
  • 税负怎么计算
  • 个体户也要做实收资本吗
  • 实收资本印花税税率多少
  • 社保基数申报怎么看是否成功
  • 购买车辆交纳的费用
  • 预提工资与计提工资的区别
  • 商品的入账价值包括消费税吗
  • 个人独资企业经营所得税税率表2023
  • 营改增前土地增值税的计算方法
  • 无形资产原值变动账务处理
  • 购买国税金税卡年费应该怎么做账务处理?
  • 重复缴税怎么做账
  • 建筑业简易征收差额征税的计算案例
  • 个税没有扣除项,需要填写和确认吗
  • 实收资本记错账如何调整账面价值
  • 当月税负率怎么算
  • 污水处理费怎么收取的
  • 企业做账会计需要什么资质
  • 电子产品企业用电量大吗
  • 折旧是属于公司成本吗
  • wind10激活密钥
  • 如何解决win7系统搜不到蓝牙耳机
  • uniapp分享图片
  • 从税法角度看,商誉计税基础
  • 收到服务费专票怎么做账
  • 股东分红怎么处理
  • ue4 像素流并发
  • wifi密码忘记了怎么重新设置密码
  • wordpress怎么上传网站
  • 购入专利权的会计科目
  • PHP+MySQL之Insert Into数据插入用法分析
  • f12开发者工具调试打不开
  • php获取网站内容
  • 企业股权转让所得可以弥补亏损吗
  • 实际借款成本率
  • 金蝶迷你版财务软件报价
  • html5期末大作业智能家具
  • 新星计划2021
  • 其他应付款转入管理费用
  • 工程没结算能否竣工验收
  • 在网上怎么样查个人征信
  • 上季度的发票开出去了可以作废吗
  • 自然人专项扣除填报
  • 图文详解塘鲺、鲶鱼的区别介绍
  • 母公司给子公司借款要利息吗
  • 企业按行业划分可划分为哪些
  • sql2005备份数据库
  • 无销项税能抵扣进项税吗
  • 有形动产租赁属于经营租赁吗
  • 撤回或减少投资所得税处理
  • 不动产登记流程有哪些
  • 损益类科目明细账怎么结账
  • 未分配利润期初余额怎么录入
  • 工会经费支出范围
  • 展位费按多少税率
  • 一般纳税人可抵扣的票证有哪些?
  • 发票抬头是个人税号怎么填
  • 五金行业怎么开店
  • sql server常见故障
  • sql将查询的结果拼接
  • centos7软件
  • Fedora Core 5(FC-5)正式版下载
  • 老毛桃U盘启动盘工具安装Win8的详细图文教程
  • linux 根目录
  • windows运行在哪
  • synchost.exe - synchost是什么进程 有什么作用
  • win10开始菜单在哪
  • win10注册表的作用
  • win8系统开机怎么进入桌面
  • python cx_Oracle的基础使用方法(连接和增删改查)
  • qt::windowtype
  • unity sliced
  • [置顶]bilinovel
  • pythen开发环境
  • 个人所得税每年都可以退税吗
  • 广东省电子税务局app下载手机版
  • 一月份纳税申报
  • 打税务局电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设