linux进程管理(二)
接上【linux进程管理(一)】
终止进程的工具 kill 、killall、pkill
终止一个进程或终止一个正在运行的程序,一般是通过 kill 、killall、pkill、xkill 等进行。比如一个程序已经死掉,但又不能退出,这时就应该考虑应用这些工具。
另外应用的场合就是在服务器管理中,在不涉及数据库服务器程序的父进程的停止运行,也可以用这些工具来终止。为什么数据库服务器的父进程不能用这些工具杀死呢?原因很简单,这些工具在强行终止数据库服务器时,会让数据库产生更多的文件碎片,当碎片达到一定程度的时候,数据库就有崩溃的危险。比如mysql服务器最好是按其正常的程序关闭,而不是用pkill mysqld 或killall mysqld 这样危险的动作;当然对于占用资源过多的数据库子进程,我们应该用kill 来杀掉。
kill
kill的应用是和ps 或pgrep 命令结合在一起使用的;
kill 的用法:
kill [信号代码] 进程ID
注:信号代码可以省略;我们常用的信号代码是 -9 ,表示强制终止;
举例:
[root@localhost ~]# ps auxf |grep httpd
root 0.0 0.0 pts/ S+ : : \_ grep httpd
root 0.1 1.3 ? Ss : : /usr/sbin/httpd
apache 0.0 0.6 ? S : : \_ /usr/sbin/httpd
apache 0.0 0.6 ? S : : \_ /usr/sbin/httpd
apache 0.0 0.6 ? S : : \_ /usr/sbin/httpd
apache 0.0 0.6 ? S : : \_ /usr/sbin/httpd
apache 0.0 0.6 ? S : : \_ /usr/sbin/httpd
apache 0.0 0.6 ? S : : \_ /usr/sbin/httpd
apache 0.0 0.6 ? S : : \_ /usr/sbin/httpd
apache 0.0 0.6 ? S : : \_ /usr/sbin/httpd
我们查看httpd 服务器的进程;您也可以用pgrep -l httpd 来查看;
我们看上面例子中的第二列,就是进程PID的列,其中4830是httpd服务器的父进程,从4833-4840的进程都是它4830的子进程;如果我们杀掉父进程4830的话,其下的子进程也会跟着死掉;
[root@localhost ~]# kill 注:杀掉4840这个进程; [root@localhost ~]# ps -auxf |grep httpd 注:查看一下会有什么结果?是不是httpd服务器仍在运行?
[root@localhost ~]# kill 注:杀掉httpd的父进程;
[root@localhost ~]# ps -aux |grep httpd 注:查看httpd的其它子进程是否存在,httpd服务器是否仍在运行?
对于僵尸进程,可以用kill -9 来强制终止退出
比如一个程序已经彻底死掉,如果kill 不加信号强度是没有办法退出,最好的办法就是加信号强度 -9 ,后面要接杀父进程;比如;
[root@localhost ~]# ps aux |grep gaim
beinan 9.0 2.3 ? S : : gaim
root 0.0 0.0 pts/ S+ : : grep gaim 或 [root@localhost ~]# pgrep -l gaim
gaim
[root@localhost ~]# kill -
killall
用法:killall 正在运行的程序名
killall 也和ps或pgrep 结合使用,比较方便;通过ps或pgrep 来查看哪些程序在运行;
举例:
[root@localhost beinan]# pgrep -l gaim
gaim [root@localhost beinan]# killall gaim
pkill
pkill 和killall 应用方法差不多,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill 来杀掉。
应用方法:
#pkill 正在运行的程序名
举例:
[root@localhost beinan]# pgrep -l gaim
gaim [root@localhost beinan]# pkill gaim
top 监视系统任务的工具:
和ps 相比,top是动态监视系统任务的工具,top 输出的结果是连续的;
top 调用方法:
top 选择参数
参数:
-b 以批量模式运行,但不能接受命令行输入;
-c 显示命令行,而不仅仅是命令名;
-d N 显示两次刷新时间的间隔,比如 -d ,表示两次刷新间隔为5秒;
-i 禁止显示空闲进程或僵尸进程;
-n NUM 显示更新次数,然后退出。比如 -n ,表示top更新5次数据就退出;
-p PID 仅监视指定进程的ID;PID是一个数值;
-q 不经任何延时就刷新;
-s 安全模式运行,禁用一些效互指令;
-S 累积模式,输出每个进程的总的CPU时间,包括已死的子进程;
交互式命令键位:
space 立即更新;
c 切换到命令名显示,或显示整个命令(包括参数);
f,F 增加显示字段,或删除显示字段;
h,? 显示有关安全模式及累积模式的帮助信息;
k 提示输入要杀死的进程ID,目的是用来杀死该进程(默人信号为15)
i 禁止空闲进程和僵尸进程;
l 切换到显法负载平均值和正常运行的时间等信息;
m 切换到内存信息,并以内存占用大小排序;
n 提示显示的进程数,比如输入3,就在整屏上显示3个进程;
o,O 改变显示字段的顺序;
r 把renice 应用到一个进程,提示输入PID和renice的值;
s 改变两次刷新时间间隔,以秒为单位;
t 切换到显示进程和CPU状态的信息;
A 按进程生命大小进行排序,最新进程显示在最前;
M 按内存占用大小排序,由大到小;
N 以进程ID大小排序,由大到小;
P 按CPU占用情况排序,由大到小
S 切换到累积时间模式;
T 按时间/累积时间对任务排序;
W 把当前的配置写到~/.toprc中;
top 应用举例:
[root@localhost ~]# top
然后根据前面所说交互命令按个尝试一下就明白了,比如按M,就按内存占用大小排序
当然您可以把top的输出传到一个文件中;
[root@localhost ~]# top > mytop.txt
然后我们就可以查看mytop文件,以慢慢的分析系统进程状态;
linux进程管理(二)的更多相关文章
- Linux进程管理(二)
目录 Linux进程管理(二) 参考 vmstat命令 top命令 Linux进程管理(二)
- [转帖]十二 个经典 Linux 进程管理命令介绍
https://www.cnblogs.com/swordxia/p/4550825.html 接了 http referer 头 没法显示图片 可以去原始blog 里面去查看. 随笔- 109 ...
- Linux进程管理 (2)CFS调度器
关键词: 目录: Linux进程管理 (1)进程的诞生 Linux进程管理 (2)CFS调度器 Linux进程管理 (3)SMP负载均衡 Linux进程管理 (4)HMP调度器 Linux进程管理 ( ...
- Linux进程管理学习资料
下面是一些Linux进程管理相关的资料. 博客 Process Creation(一) Process Creation(二) 进程切换分析(1):基本框架 进程切换分析(2):TLB处理 When ...
- Linux进程管理四大工具ps \dstat\ top\ htop
Linux进程管理之“四大名捕” 一.四大名捕 四大名捕,最初出现于温瑞安创作的武侠小说,是朝廷中正义力量诸葛小花的四大徒弟,四人各怀绝技,分别是轻功暗器高手“无情”.内功卓越的高手“铁手”.腿功惊人 ...
- Linux进程管理与调度-之-目录导航【转】
转自:http://blog.csdn.net/gatieme/article/details/51456569 版权声明:本文为博主原创文章 && 转载请著名出处 @ http:// ...
- [转帖]linux进程管理总结
linux进程管理总结 https://www.cnblogs.com/chenfangzhi/p/10660355.html 高手总结的.. 看出来我是菜逼. 目录 一.进程相关的概念 二.关闭会话 ...
- Linux进程管理——查看内存的工具
Linux进程管理——查看内存的工具 一查看内存的工具vmstat vmstat命令:虚拟内存信息vmstat [options] [delay [count]]vmstat 2 5 [root@ce ...
- Linux进程管理之ps的使用
主题Linux进程管理之ps工具的使用 一ps工具的介绍 ps: process state 进程状态ps - report a snapshot of the current processesL ...
随机推荐
- LDAP属性对照表
AD属性对照表 姓 Sn 名 Givename 英文缩写 Initials 显示名称 displayName 描述 Description 办公室 physicalDeliveryOfficeName ...
- 跟我学算法-吴恩达老师(mini-batchsize,指数加权平均,Momentum 梯度下降法,RMS prop, Adam 优化算法, Learning rate decay)
1.mini-batch size 表示每次都只筛选一部分作为训练的样本,进行训练,遍历一次样本的次数为(样本数/单次样本数目) 当mini-batch size 的数量通常介于1,m 之间 当 ...
- Python time、datetime
简介: 记录一下 Python 如何获取昨天.今天.明天时间及格式化. 1.今天 In [1]: import time In [2]: print time.strftime('%Y.%m.%d', ...
- XML解析的二种方法之dom解析
XML解析的二种方法:dom解析和sax解析 文件大小 存储位置 读取速度 dom解析 小文件 放在内存中 快 sax解析 ...
- react-native 打包 出apk
先上步骤: 一. 生成签名文件(my-release-key.keystore文件) Android要求所有应用都有一个数字签名才会被允许安装在用户手机上 1. 在项目目录下运行如下命令: keyt ...
- jsp页面拨打电话和QQ聊天
拨打电话: <a href="tel:手机号">拨打电话</a> 这种方式塞班.安卓与iphone都支持. 参考文章:https://blog.csdn.n ...
- 使用IntelliJ IDEA,gradle开发Java web应用步骤
最近 正在学习gradle构建工具的使用,看了一堆的文档,有点一知半解,索性动作实践一把,在以后的自己的项目中尝试使用看看.目前手头用的是IntelliJ IDEA 14,搭建了一天终于明白怎么集成g ...
- XAMPP非本地访问被拒绝解决办法
问题场景: 本机搭建一个apache服务器,正常访问XAMPP目录下的页面. 手机接入同一wifi,以电脑ip方式访问该目录下的页面:提示:Access Denied Access to the re ...
- 全球数据库-->基金/管理产品-->基金分析/新闻/报告
加拿大共同基金 澳大利亚投资信托 美国ETF 美国共同基金 英国投资信托基金 名称 分析师名称 分析日期 晨星分析师评级 晨星简报
- tomcat服务器输入localhost可以访问,ip无法访问解决办法
最近在开发项目中,遇到的一个问题是: 在 tomcat中发布一个web项目,但是发布成功后,只能用http://localhost:8080/fm访问项目,不能用 http://127.0.0.1:8 ...