一、进程查看
1. 进程简介
进程是正在执行的一个程序或者命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。
2. 进程管理的作用
(1)判断服务器的健康状态
(2)查看系统中的所有进程
(3)杀死进程(当正常终止进程的手段不起作用时才考虑使用)
3. 查看系统中的所有进程
(1)ps -le
查看系统中的所有进程,使用Linux系统格式
(2)ps aux
查看系统中是所有进程,使用unix操作系统格式
USER:该进程是由哪个用户产生的 PID:进程的ID号 %CPU:该进程占用CPU资源的百分比,占用越高,进程消耗资源越多 %MEM:该进程占用物理内存的百分比,占用越高,进程消耗资源越多 VSZ:进程占用虚拟内存的大小,单位KB RSS:该进程占用实际物理内存的大小,单位KB TTY:该进程是在哪个终端运行的。其中tty1-tty7代表本地控制台终端,tyy1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。 STAT:进程状态。常见的有:R-运行,S-睡眠,T-停止状态,s-包含子进程,+-位于后台 START:该进程的启动时间。在当天启动的用时间表示,超过一天的用月日表示。 TIME:该进程占用CPU的运算时间,注意不是系统时间 COMMAND:产生此进程的命名
4. 查看健康状态
语法:top [选项]
选项:
-d 秒数:指定top命令每隔几秒更新一次,默认是3秒。
在top命令的交互模式中可执行以下命令:
?或h:显示交互模式的帮助
P:以CPU使用率排序,默认就是此选项
M:以内存的使用率排序
N:以PID排序
q:退出top
第一行表示任务信息:系统当前时间,系统运行时间,当前登录用户,系统在之前1分钟、5分钟、15分钟的平均负载。
第二行表示进程信息:系统中的进程总数,正在运行的进程数,睡眠进程数,正在停止的进程数,僵尸进程数(进程正在终止,但还没终止完成。如果不是0,需手动检查僵尸进程)
第三行表示CPU信息:用户模式占用的CPU百分比,系统模式占用的CPU百分比,改变过优先级的用户进程占用的CPU百分比,空闲CPU的百分比,等待输入输出的进程占用的CPU百分比,硬中断请求服务占用的百分比,软中断请求服务占用的CPU百分比,st虚拟时间百分比(就是当有虚拟机时,虚拟CPU等待实际CPU的时间百分比)
第四行表示内存信息:物理内存总量(单位KB),已经使用的物理内存,空闲的物理内存,作为缓冲的内存
第五行表示swap信息:交换分区的总大小,已经使用的交换分区大小,空闲的交换分区大小,作为缓存的交换分区大小
5. 查看进程树命令
语法:pstree [选项]
选项:
-p:显示进程的PID
-u:显示进程的所属用户
二、终止进程
1. kill命令
kill -l 此命令可用来查看可用的进程信号
常用是的信号有如下几个
1 SIGHUP 该信号让进程立即关闭,然后重新读取配置文件后重启进程
9 SIGKILL 用来立即结束程序的运行,本信号不能被阻塞、处理和忽略。一般用来强制终止进程 。
15 SIGTERM 正常结束进程的信号,也是kill命令的默认信号。有时如果进程已经发生问题,这个信号是无法正常终止进程的,此时才会尝试信号9来强制终止进程。
一般用来终止进程的话,格式为kill [信号] [进程号] 如:kill -9 1409
2. killall 命令--按照进程名杀死进程
语法:killall [选项] [信号] 进程名
选项:
-i:交互式,询问是否要杀死某个进程
-I:忽略进程名的大小写
[root@localhost yum.repos.d]# killall -i -9 mysqld Signal mysqld(1407) ? (y/N) n mysqld: 没有进程被杀死 [root@localhost yum.repos.d]#
3. pkill命令
语法:pkill [选项] [信号] 进程名
选项:
-t 终端号:按照终端号提出用户
pkill命令和killall命令非常类似,都是按照进程名来终止进程,但pkill命令还可以根据终端号来把某个用户提出登录界面。此时,我们可以使用w命令来查询本机已经登录的终端用户。
[root@localhost /]# w 20:26:47 up 4:40, 2 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 - 20:19 12.00s 0.05s 0.05s -bash root pts/0 192.168.27.1 15:47 0.00s 0.38s 0.00s w [root@localhost /]# pkill -9 -t tty1 [root@localhost /]# w 20:27:04 up 4:40, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 192.168.27.1 15:47 0.00s 0.40s 0.02s w [root@localhost /]#