大量不可中断进程和僵尸进程出现,怎么办?

回答·17
最热
最新
  • 首先确认不可中断进程是否为系统的启动时已经启动的进程如果是那么那些进程不能直接强制杀死,因为可能会造成系统崩溃,如果是僵尸进程那么可以直接杀死用 kill-9 强制杀死,如果是 windows 可以先用 tasklist 查进程,然后用 taskkill/PID+僵尸进程的 PID 即可杀死。如果是大量的话那就批量吧,windows 写 bat 脚本,linux 写 shell 脚本。但是首先要确认进程和僵尸进程有哪些?不然把一些其他在运行的服务进程给杀死了可能会影响业务和系统运行
  • 短时应用的运行时间比较短,很难在 top 或者 ps 这里系统展示概要和进程快照中发现,需要使用记录事件的工具来配合诊断,比如 execsnoop 或者 perf top 讲到 cpu 使用率的类型,除用户 cpu 之外,还包括系统 cpu(上下文切换)、等待 io 的 cpu(等待磁盘的响应)以及中断 cpu(包括软中断和硬中断)等 --进程状态 当 iowait 升高时,进程很可能因为得不到硬件的响应,而长时间处于不可中断状态。从 ps 或者 top 中,可以发现都出 d 状态,也就是不可中断状态(uninterruptible sleep) top,ps 是最常用的查看进程状态的工具,top 中 s 列表示进程的状态--R\D\Z\S\I 等几个状态 --R 是 running 或 runnable,表示进程在 cpu 的就绪队列中,正在运行或正在等待运行 --D 是 disk sleep,不可中断状态睡眠(uninterruptible sleep)一般表示正在跟硬件交互,并且交互过程不允许被其他进程或中断打断 --Z 是 zombie,僵尸进程,也就是进程实际上已经结束了,但是父进程还没有回收它的资源 --S 是 interruptible sleep,可中断状态睡眠,表示因为等待某个事件而被系统挂起,当进程等待的事件发生,它会被唤醒并进入 R 状态 --I 是 idle,空闲状态,用在不可中断睡眠的内核线程上。要注意,D 状态的进程会导致平均负载升高,I 状态的进程却不会。 --T 或者 t,stoped 或 traced,表示进程处于暂停或者跟踪状态,向一个进程发送 sigstop 信号,它就会因响应这个信号变成暂停状态(stopped);再发送 sigcont,进程会恢复 --X,表示进程已经消亡,不会在 top 或者 ps 中看到 --top 命令,按 1 切换到 cpu 如果系统或硬件发送了故障,进程可能会在不可中断状态保持很久,甚至导致系统中出现大量不可中断进程,需要注意,系统是不是出现了 I/O 等性能问题。 [root@mysqlhq ~]# yum install dstat -y 这里 dstat 是一个新的性能工具,吸收了 vmstat、iostat、ifstat 等工具的优点,可以同时观察系统的 cpu、磁盘 io、网络以及内存的使用情况   --不可中断状态,表示进程正在跟硬件交互,为了保护进程数据和硬件的一致性,系统不允许其他进程或中断打断这个进程。进程长时间处于不可中断状态,通常表示系统 io 性能问题。 --僵尸进程表示进程已经退出,但它的父进程还没有回收子进程占用的资源。短暂的僵尸状态通常不必理会,但进程长时间处于僵尸状态,就应该注意了,可能有应用程序没有
  • 使用kill将进程强杀掉
  • 指着程序右键找到对应的程序,看看是什么程序,该卸载的就卸载了吧!该删除的就删除了吧!
  • 分析系统,判断业务可否停机,处理进程或重启系统,编写脚本阻断进程,分析原因,根治问题。
  • 从Windows2000开始,Windows系统就自带了一个用户态调试工具Ntsd,它能够杀掉大部分进程,因为被调试器附着的进程会随调试器一起退出,所以只要你在命令行下使用Ntsd调出某进程。 然后退出Ntsd即可终止该进程,而且使用Ntsd会自动获得Debug权限,因此Ntsd能杀掉大部分的进程。 操作方法:单击“开始”/程序/附件/命令提示符,输入命令:ntsd-cq-pPID(把最后那个PID,改成你要终止的进程的PID)。 在进程列表中你可以查到某个进程的PID,例如我们要关闭图1中的Explorer.exe进程,输入:ntsd-cq-p408即可,以上参数-p表示后面跟随的是进程PID,-cq表示执行退出Ntsd的调试命令,从命令行把以上参数传递过去就行了。 或使用专门软件进行关闭进程 任务管理器杀不掉的进程,你可以使用专门的软件关闭。有很多软件可以杀进程,例如进程杀手、IceSWord、柳叶擦眼、系统查看大师、Killprocess等。
  • 写shell脚本强制杀死
  • inode 没有释放导致的,找到并清空
  • 服务器中木马的可能性大,虚拟环境的话另建一个安全系统进行业务迁移。
  • 万能的三六零安全卫士,哈哈哈