Linux中杀不死的进程
前段时间,一哥们,去杀Linux服务器的进程,发现kill命令失灵了,怎么杀都杀不死。
然后上网查了下资料,原来是要被杀的进程,成为了僵尸进程。
僵尸进程的查看方法:
利用命令ps,可以看到有标记为Z的进程就是僵尸进程。
知道了原因,就想怎么去把这个僵尸进程干掉。网上说了两种方法,一种最简单的方法,重启服务器,相当于清理内存了。方法很简单,但是不是很实用,因为服务器,不是你一个人在用,服务器是不能随随便便重启的。第二种方法,杀掉其父进程,父进程干掉后,该僵尸进程也就消失了。
可以用 ps -ef | grep 进程ID ,找到其父进程,然后 kill -9 父进程ID
其中ps命令:
ps aux

USER:该 进程 属于哪个用户
• PID :该 进程 的ID。• %CPU:该 进程 使用掉的 CPU 资源百分比;• %MEM:该 进程 所占用的物理内存百分比;• VSZ :该 进程 使用掉的虚拟内存量 (Kbytes)• RSS :该 进程 占用的固定的内存量 (Kbytes)• TTY :该 进程 是在哪个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。• STAT:该程序目前的状态,主要的状态有:o R :该程序目前正在运作,或者是可被运作;o S :该程序目前正在睡眠当中 (可说是 idle 状态啦!),但可被某些讯号 (signal) 唤醒。o T :该程序目前正在侦测或者是停止了;o Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态• START:该 进程被触发启动的时间;• TIME :该 进程 实际使用 CPU 运作的时间。• COMMAND:该程序的实际指令为何Linux中杀不死的进程的更多相关文章
- Linux中的两种守护进程stand alone和xinetd
Linux中的两种守护进程stand alone和xinetd --http://www.cnblogs.com/itech/archive/2010/12/27/1914846.html#top 一 ...
- Linux中open函数以及退出进程的函数
open函数的flag详解1 读写权限:O_RDONLY O_WRONLY O_RDWR (1)linux中文件有读写权限,我们在open打开文件时也可以附带一定的权限说明 (譬如O_RDONLY就表 ...
- [堆栈]Linux 中的各种栈:进程栈 线程栈 内核栈 中断栈
转自:https://blog.csdn.net/yangkuanqaz85988/article/details/52403726 问题1:不同线程/进程拥有着不同的栈,那系统所有的中断用的是同一个 ...
- linux中如何查看某一进程的启动时间
mark下: ps -p PID -o lstart 其中PID是进程的pid ps的参数好多啊,够摸索一下了
- Linux中的轻量级进程
在Linux中,轻量级进程可以是进程,也可以是线程.我们所说的线程,在Linux中,其实是轻量级进程之间共享代码段,文件描述符,信号处理,全局变量时: 如果不共享,就是我们所说的进程. 进程是资源管理 ...
- 如何在 Linux 中找出 CPU 占用高的进程
1) 怎样使用 top 命令找出 Linux 中 CPU 占用高的进程 在所有监控 Linux 系统性能的工具中,Linux 的 top 命令是最好的也是最知名的一个.top 命令提供了 Linux ...
- 在 Linux 中找出 CPU 占用高的进程
列出系统中 CPU 占用高的进程列表来确定.我认为只有两种方法能实现:使用 top 命令 和 ps 命令.出于一些理由,我更倾向于用 top 命令而不是 ps 命令.但是两个工具都能达到你要的目的,所 ...
- 手把手教你写LKM rookit! 之 杀不死的pid&root后门
......上一节,我们编写了一个基本的lkm模块,从功能上来说它还没有rootkit的特征,这次我们给它添加一点有意思的功能.我们让一个指定的进程杀不死, 曾经,想写一个谁也杀不死的进程,进程能捕捉 ...
- 25 Linux中的信号
Linux中的信号 信号是进程在运行过程中,由自身产生或由进程外部发过来的消息(事件).每个信号用一个整型常量宏表示,以SIG开头,比如SIGCHLD.SIGINT等,它们在系统头文件中定义,也可以通 ...
随机推荐
- Docker命令详解
Docker命令详解 最近学习Docker,将docker所有命令实验了一番,特整理如下: # docker --help Usage: docker [OPTIONS] COMMAND [arg ...
- mybatis- spring 批量实现数据导入数据库
终于实现了ibatis的批量插入,此方法插入3000条数据,比单条插入可以节省一半的时间XML代码: <insert id="insertBatch" parameterTy ...
- Windows下LATEX排版论文攻略—CTeX、JabRef使用介绍
Windows下LATEX排版论文攻略—CTeX.JabRef使用介绍 一.工具介绍 TeX是一个很好排版工具,在学术界十分流行,特别是数学.物理学和计算机科学界. CTeX是TeX中的一个版本,指的 ...
- wamp 修改默认apache 80端口
wamp server 环境安装包 修改默认80端口 D:\wamp\bin\apache\apache2.4.9\conf\httpd.conf 找到如下代码出修改后,重启apache即可 ## L ...
- sublime 中 pyv8 binary 报错怎么处理?
,sublime text 在安装插件的时候,尤其是Emmet的时候,经常会报一个错误--please wait a bit whilePyV8 binary is being downloaded, ...
- nginx服务器命令
nginx -s reload :修改配置后重新加载生效 nginx -s reopen :重新打开日志文件nginx -t -c /path/to/nginx.conf 测试nginx配置文件是 ...
- 高可用mysql之MHA的原理
MHA 如何工作的? MHA是如何工作的? ============================================================================== ...
- Android之Linearlayouy线性布局
写了个小例子xml代码如下: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout x ...
- 数据库操作,jdbc的CRUD
用Java代码操作数据库,可以用JDBC.首先要加载驱动,之后建立连接,再然后就可以对数据库进行操作. 1.建立连接.此处用的是MySQL数据库 public class DBUtil { publi ...
- Android控制ScrollView滚动
有两种办法,第一种,使用scrollTo(),这个方法不需要handler,直接调用就行 第二种方式,使用fullScrol() 下面我们看一下这个函数: scrollView.fullScroll( ...