1.        ps

显示系统进程瞬间的运行动态的命令ps

(1)选项:-A:所有的进程均显示出来,与 -e 具有同样的效果;

-a:显示现行终端机下的所有进程,包括其他用户的进程;

-u:以用户为主的进程状态;

-x:通常与 -a 一起使用,可列出完整信息;

输出格式规划:-l :较长,较详细的将该PID的信息列出;

(2)ps -ef

[root@WWcentos ~]# ps -ef
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 14:30 ?        00:00:09 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2      0  0 14:30 ?        00:00:00 [kthreadd]
root          4      2  0 14:30 ?        00:00:00 [kworker/0:0H]
root          6      2  0 14:30 ?        00:00:00 [ksoftirqd/0]
root          7      2  0 14:30 ?        00:00:00 [migration/0]

#UID:代表执行者身份;

#PID:进程的ID号;

#PPID:父进程的ID号;

#C:CPU使用的资源百分比;

#STIME:进程启动到现在的时间;

#TTY:登陆者的终端位置;

#TIME:使用掉的CPU的时间;

#CMD:所下达的指令名称;

(3)ps -aux

[root@WWcentos ~]# ps -aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.7 128528  7176 ?        Ss   14:30   0:09 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2  0.0  0.0      0     0 ?        S    14:30   0:00 [kthreadd]
root          4  0.0  0.0      0     0 ?        S<   14:30   0:00 [kworker/0:0H]
root          6  0.0  0.0      0     0 ?        S    14:30   0:00 [ksoftirqd/0]
root          7  0.0  0.0      0     0 ?        S    14:30   0:00 [migration/0]
root          8  0.0  0.0      0     0 ?        S    14:30   0:00 [rcu_bh]
root          9  0.0  0.0      0     0 ?        R    14:30   0:00 [rcu_sched]

#USER:该进程属于哪个使用者账号;

#PID:该进程的进程ID号;

#%CPU:该进程使用掉的CPU资源百分比;

#%MEM:该进程所占用的物理内存百分比;

#VSZ:该进程使用掉的虚拟内存量(字节 kbytes)

#RSS:该进程占用的固定内存量(字节 kbytes)

#TTY:该进程是在那个终端机上面运作,若与终端机无关,则显示 ?        tty1-tty6是本机上面的               登入者程序        若为pts/0等等的,则表示为由网络连接进主机的程序

#STAT:该程序目前的状态:

R:该进程目前正在运作,或者是可被运作的;

S:该进程目前处在睡眠状态当中,但可被某些讯号(signal)唤醒;

T:该进程目前正在侦测或者是停止了;

Z:该程序已经终止,但是其父程序却无法正常的终止他,造成zombie(僵尸)程序的                          状态

#START:该进程被触发启动的时间;

#TIME:该进程实际使用CPU运作的时间;

#COMMAND:该程序的实际指令;

2.        pstree

用于查看进程树之间的关系,即哪个进程是哪个父进程,哪个子进程。

(1)命令选项:-p        同时列出每个进程的PID

(2)环境准备:安装pstree命令:

 yum install psmisc-22.20-11.e17.x86_64或者:yum install epel-releaseyum install htop

3.        pgrep

通过pgrep来获得正在被调度的进程的相关信息,pgrep通过匹配其程序名,找到匹配的进程。

(1)命令选项:-l        同时显示进程名和PID

以apache为例(前提这个软件得先启用)
[root@WWcentos ~]# pgrep httpd
2371
2372
2373
2374
[root@WWcentos ~]# pgrep -l httpd
2371 httpd
2372 httpd
2373 httpd
2374 httpd

#pgrep命令用来查找进程的信息,通常会和pkill命令来连用,在指定条件下kill问题进程。

4.        killall        kill        pkill

4.1        pkill

(1)pkill是ps命令和kill命令的结合,按照进程名来杀死指定进程。通常会和pgrep命令连用。

[root@localhost ~]# pgrep -l httpd
1438 httpd
1439 httpd
1440 httpd
1441 httpd
1442 httpd
1443 httpd
[root@localhost ~]# pkill httpd
[root@localhost ~]# pgrep -l httpd
[root@localhost ~]#

4.2        killall

(1)killall命令用于杀死指定名字的进程。

(2)命令:killall 进程名

以apache为例:
[root@localhost ~]# ps -ef |grep httpd
root       2264      1  0 20:28 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     2265   2264  0 20:28 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     2266   2264  0 20:28 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     2267   2264  0 20:28 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     2268   2264  0 20:28 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     2269   2264  0 20:28 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
root       2356   1321  0 20:40 pts/0    00:00:00 grep --color=auto httpd
[root@localhost ~]# killall httpd
[root@localhost ~]# ps -ef |grep httpd
root       2364   1321  0 20:41 pts/0    00:00:00 grep --color=auto httpd

4.3        kill

(1)kill命令用来终止指定的进程(terminate a process)的运行。通常,终止一个前台进程用ctrl+c ,对于后台进程就必须用kill命令来终止进程PID。kill命令是通过向进程发送指定的信号来结束进程的,在默认情况下采用编号为15的TERM信号。TERM信号将终止所有不能捕获该信号的进程;对于那些可以捕捉该信号的进程就要用编号为9的kill信号强行杀掉该进程。

(2)kill命令的信号号码:

kill命令可以带信号号码选项,也可不带。如果没有信号号码,kill命令就会发出终止信号(15),这个信号可以被进程捕获,使得进程在退出之前可以清理并释放资源。

[root@localhost ~]# kill -l1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
63) SIGRTMAX-1  64) SIGRTMAX

注意:只有第九种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权限忽略。

常用信号:HUP        1        终端断线

                   INT        2        中断(只要能用ctrl+c退出的,都能使用kill -2 进程号 中断)

 SIG        9        强制终止

                TERM        15        终止

(3)kill -0         不发送任何信号,常用来检测进程是否存在。如果存在,可以通过 echo $? 拿到                              值为0,否则值为1

以apache为例
[root@localhost ~]# pgrep -l httpd
1506 httpd
1507 httpd
1508 httpd
1509 httpd
1510 httpd
1511 httpd
[root@localhost ~]# kill -0 1506
[root@localhost ~]# echo $?
0
[root@localhost ~]# ps -ef |grep httpd
root       1506      1  0 10:43 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1507   1506  0 10:43 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1508   1506  0 10:43 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1509   1506  0 10:43 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1510   1506  0 10:43 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache     1511   1506  0 10:43 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
root       1516   1348  0 10:44 pts/0    00:00:00 grep --color=auto httpd
[root@localhost ~]# pkill httpd
[root@localhost ~]# kill -0 1506
-bash: kill: (1506) - No such process
[root@localhost ~]# echo $?
1

5.        top

(1)动态地持续监控进程的状态。

[root@WWcentos ~]# top
top - 11:16:15 up  1:08,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 136 total,   1 running, 135 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  5.9 sy,  0.0 ni, 94.1 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :   995676 total,   387172 free,   248724 used,   359780 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   596700 avail Mem

#第一行:

11:16:15 当前的系统时间;

up 1:08 系统已经运行了一小时8分钟,在此期间没有重启过;

1 user 当前有一个用户在登录系统;

load average 后面的三个数分别是1分钟、5分钟、15分钟的负载情况。数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。

#第二行:Tasks 任务进程:

系统现在共有137个进程,其中处于运行的有1个,135个在休眠(sleeping),stopped 停止状态的有0个,zombie状态(僵尸)的有0个。

#第三行:CPU状态:

0.0 us    用户空间占用CPU的百分比

5.9 sy   内核空间占用CPU的百分比

0.0 ni     改变过优先级的进程占用CPU的百分比

94.1 id   空闲CPU百分比

0.0 wa    IO等待占用CPU的百分比

0.0 hi     硬中断(Hardware IRQ)占用CPU的百分比

0.0 si     软中断(Software Interrupts)占用CPU的百分比

#第四行:运行内存状态

995676 total   物理内存总量(1GB)

387172 free     空闲内存总理(387M)

248724 used  使用的交换区总量(248M)

359780 buff/cache 缓存内存量(359M)

#第五行:swap 交换分区

2097148 total  交换区总量(2G)

2097148 free   空闲的交换区总量(2G)

0 used     使用的交换区总量(0M)

596700 avail Mem  缓冲的交换区总量(596M)

#第七行 各进程(任务)的状态监控

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND1 root      20   0  128256   6964   4192 S  0.0  0.7   0:01.99 systemd2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd4 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H5 root      20   0       0      0      0 S  0.0  0.0   0:00.17 kworker/u256:06 root      20   0       0      0      0 S  0.0  0.0   0:00.17 ksoftirqd/07 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/08 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh

#PID         进行的标识号;

#USER     运行此进程的用户;

#PR          进程优先级;

#NI           nice值。Linux支持的nice级别从19(最低 优先级)到 -20(最高 优先级),默认为0

#VIRT       进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

#RES        进程使用的,未被换出的物理内存大小,单位kb。RES=CODE+DATA

#SHR       共享内存大小,单位kb。  

#S             指进程的运行状态。S表示休眠,等待唤醒。

#%CPU    上次更新到现在的CPU时间占用百分比

#%MEM    进程使用的物理内存百分比

#TIME+     进程使用的CPU时间总计,单位1/100秒

#COMMAND     进程名称(命令名/命令行)。如果COMMAND 为[defunct],则代表僵尸进程,                            可用kill -9杀掉 .

(2)        top 命令实现窗口排序(快捷键):

A        start time

M        %MEM                内存大小排序

N        PID                      PID大小排序

P        %CPU                  CPU使用率排序

T        TIME+                    运行时间多少的排序

6.        htop

(1)环境:安装epel源:

yum install httpd://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch

安装 htop:yum install htop

(2)实时监控画面:

#左上区域:显示了CPU,物理内存和交换分区的信息;

#右上区域:显示了任务数量,平均负载和连接运行时间等信息。

快捷键:

#F1        显示帮助信息;

#F2        配置界面中的显示信息;

#F3        按照进程名进行搜索进程,或者直接输入“/”。

#F4        过滤器,相当于模糊查找,不区分大小写,下方输入要搜索的内容。

#F5        以树形图方式显示。

#F6        排序方式,按下F6之后,按照自己的选择方式来排序。

#F7,F8        调整进程nice值,F7表示减小nice值(减小优先级),选择某一进程,按F7或者F8增                      大或者减小nice值。

#F9        杀死进程,选择某一进程按F9即可杀死此进程。

#F10        退出htop

7.        vmstat:

(1)展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。相比top,我们可以看到整个机器的CPU,内存,IO的使用情况。

(2)官方解释:

VMSTAT(8)                                                              Linux 系统管理员手册                                                             VMSTAT(8)NAMEvmstat - 报告虚拟内存的统计信息总览vmstat [-n] [延时[次数]]vmstat [-V]描述vmstat 对系统的进程情况、内存使用情况、交换页和 I/O 块使用情况、 中断以及 CPU 使用情况进行统计并报告相应的信息。第一个显示内容指出了计算机自上次重启至今的平均使用情况。 后面的每一行信息是按 延时 定期地显示系统的各部分信息。 进程信息和内存信息都是即时产生的。选项-n 开关令第一次的信息只显示一次而不是周期地产生。延时 是以秒为单位的刷新时间间隔。 如果没有给出此延时时间,则仅显示系统启动至今的平均值。次数 指的是更新的次数。 如果没有指定此数而又定义了延时时间,则次数的默认值是无穷次。-V 开关可以用来输出该命令的版本信息。输出信息简介Procsr: 等待运行的进程数b: 处在非中断睡眠状态的进程数w: 被交换出去的可运行的进程数。此数由 linux 计算得出,但 linux 并不耗尽交换空间Memoryswpd: 虚拟内存使用情况,单位:KBfree: 空闲的内存,单位KBbuff: 被用来做为缓存的内存数,单位:KBSwapsi: 从磁盘交换到内存的交换页数量,单位:KB/秒so: 从内存交换到磁盘的交换页数量,单位:KB/秒IObi: 发送到块设备的块数,单位:块/秒bo: 从块设备接收到的块数,单位:块/秒Systemin: 每秒的中断数,包括时钟中断cs: 每秒的环境(上下文)切换次数CPU按 CPU 的总使用百分比来显示us: CPU 使用时间sy: CPU 系统使用时间id: 闲置时间

(3)一般vmstat工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数。

例如:vmstat 2 1        #2代表每两秒采集一次     1代表采集次数

24.Linux进程管理工具——ps,pstree,pgrep,kill,top,htop,vmstat相关推荐

  1. Linux 进程管理工具

    Linux进程管理命令:     pstree.ps.top.pidof.htop.glances.pmap.vmstat.dstat.kill.pkill.job.bg.fg.nohup.pgrep ...

  2. Linux进程管理之ps的使用

    主题Linux进程管理之ps工具的使用 一ps工具的介绍 ps: process state  进程状态 ps - report a snapshot of the current processes ...

  3. ​Linux进程管理工具

    Linux进程管理工具 一.pstree:查看进程树结构 二.ps命令使用 1.命令说明 ps:显示进程状态的命令,快照式.一次性 2.常用组合参数 aux: -ef: 例如: 3.各选项代表意义: ...

  4. Linux进程管理工具 Supervisor详解

    介绍 Supervisor安装与配置(linux/unix进程管理工具) Supervisor(http://supervisord.org)是用Python开发的一个client/server服务, ...

  5. Linux 进程管理工具:supervisor

    Linux 进程管理工具:supervisor supervisor简介 在Linux服务器中,有时候我们需要一个进程需要可靠的在后台运行,并且能够监控进程状态,在意外结束时能够自动重启等.此时就可以 ...

  6. linux 修改权限 anyone,linux 进程管理工具

    狭义定义:进程是正在运行的程序的实例. 广义定义:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动.它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的 ...

  7. Linux进程管理工具_Supervisor的安装与配置

    Linux/Unix进程管理工具_Supervisor的安装与配置 Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是L ...

  8. Linux进程管理工具的使用

    进程管理工具之一 htop htop是基于ncurses做的,可以说是top的升级版,htop在继承了top原有的功能外让界面更加友好,支持交互式操作并且可以使用鼠标操作. 在命令行里输入htop回车 ...

  9. linux进程管理 ps,Linux - 进程管理,ps与top

    一个运行的程序,可能有多个进程. PID进程ID. UID启动进程的ID. 进程所属组GID. 进程的状态R运行.S睡眠.Z僵尸. 父进程管理子进程,父进程终止的时候子进程也会终止. 常用的组合为: ...

最新文章

  1. SpringCloud 教程 | 第二篇: 服务消费者(rest+ribbon)
  2. Python中’__main__’模块的作用
  3. java实现留言版并回复_Java-留言板-回复页面(JSP)
  4. 重量级 | 重量级!Maven史上最全教程,看了必懂
  5. 用python做一个输入半径值计算圆的面积保留两位小数_1063 计算谱半径 (20分)
  6. 0. Unix / Linux操作系统介绍
  7. 32位win10服务器系统,win10原版32位
  8. 关于reduce的理解
  9. 2022-2028中国蛋白糖果市场现状研究分析与发展前景预测报告
  10. 【网络Ping不通如何解决?】
  11. /* 商人过河的问题 假如有三个商人各带一个随从要过河。 只有一条船得需要他们划每次只能坐两个人,条件是任何一岸的随从多于商人时随从就会抢劫商人。 请问这三个商人怎样才能安全过河? */...
  12. 企鹅号怎么赚钱,企鹅号怎么运营,企鹅号怎么写爆文
  13. fastposter 1.6.0 发布 电商级海报生成器
  14. android 计步器 开发,Android计步器开发
  15. 自动化测试框架[各自动化测试框架大比拼]
  16. 鸿蒙 使用hawk存储数据
  17. 鸿蒙兼容安卓,华为鸿蒙OS正式官宣!兼容安卓程序,网友反应却水火不容
  18. c++中this指针的理解(转载:苦涩的茶 ——产品开发 C++类中this指针的理解)
  19. 【AI TOP 10】扎克伯格要整顿Facebook;LeCun飙脏话批机器人Sophia;北京站加装人脸识别检票机
  20. 优思学院|六西格玛黑带的职责包括什么?

热门文章

  1. BSA专题2—缩小定位区间和后续验证怎么做?
  2. 支持苹果快充的充电宝推荐,苹果授权充电宝有哪些品牌
  3. 软件需求分析之猫咪记单词
  4. Go语言基础(七):结构体
  5. datetime库:Python日期与时间值管理计算
  6. 电动汽车动力电池直流内阻和交流内阻
  7. FBX网格,材质和贴图
  8. Qml界面切换时,字体消失或乱码
  9. 向添加前端静态页面之后,菜单栏显示正常,但是点击的时候报错main.js:978 Error: Cannot find module ‘./function (resolve) {。。。。。。
  10. 2021年河南高考成绩排名查询,2021年江西高考成绩几号可以查?江西高考成绩排名分数什么时候出...