感谢支持
我们一直在努力

Linux查看进程总结

Linux进程主要分为:静态进程查看命令(ps)、动态进程查看命令(top)和查看进程树命令(pstree),下面分别介绍这几个进程

一、静态进程查看

ps命令格式:    ps -aux    查看系统所有进程

ps -lA        查看所有系统的数据

ps axjf      连通部分进程树状态

-A:与-e意思一样,表列出所有进程

-a :不与terminal有关的进程

-u:有效用户相关的进程

x:通常与a这个参数一起用,可以列出完整信息

输出格式:  l:较仔细列出该pid信息

j:工作格式

-f:做一个更为完整的输出

ps -l:仅查看自己的bash相关进程

  1. www.linuxidc.com @Ubuntu:~$ ps -l 
  2. F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD 
  3. 0 S  1000 20257 20248  0  80   0 –  6067 wait   pts/7    00:00:00 bash 
  4. 0 R  1000 21392 20257  0  80   0 –  2466 –      pts/7    00:00:00 ps 

F:进程标志
4:表示权限为root
1:表示只能复制,不能执行
S:表示进程的状态(STAT)
R:running表示正在运行状态
S:sleep表示沉睡状态,但是可以唤醒
D:表示沉睡状态,不能唤醒,通常这个进程可能在等待I/O的情况
T:stop表示停在状态,例如暂停的后台工作或出错进程
Z:僵尸进程,进程已经终止但不能提出内存外
UID/PID/PPID:表示用户的UID/进程的PID号码/此进程的父进程PID号码
C:表示CPU的使用率,单位是百分比
PRI/NI:表示此进程被CPU执行的优先级,数字越小,优先级越高
ADDR:支持该进程在内存的那个部分,若该进程正在运行这表示为“-”
SZ:表示该进程占用了多少内存
WCHAN:表示该进程是否运行,若在运行这表示为“-”
TTY:表示登陆终端,若是远程登陆表示为pts/h
TIME:表示该进程使用CPU的时间
CMD:command,表示那个命令启动的该进程

  1. www.linuxidc.com @ubuntu:~$ ps aux 
  2. USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND 
  3. root         1  0.0  0.0  24564  2444 ?        Ss   08:19   0:00 /sbin/init 
  4. root         2  0.0  0.0      0     0 ?        S    08:19   0:00 [kthreadd] 
  5. root         3  0.0  0.0      0     0 ?        S    08:19   0:04 [ksoftirqd/0] 

USER:表示该进程所属用户

PID:该进程的PID号

%CPU:表示该进程的CPU占用率

%MEM:表示该进程的物理内存占用率

VSZ:表示该进程占用了多少虚拟内存量

RSS:表示该进程占用了多少固定内存量

TTY:表示登陆端口

STAT:和上面介绍的进程状态一样(R/S/D/T/Z进程)

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

TIME:表示该进程占用CPU的时间

COMMAND:表示触动该进程的命令

僵尸进程

通常,造成僵尸进程的原因是该进程应该已经执行完毕,或是因故应该要终止了,但是该进程的父进程却无法完整将该进程结束掉,而造成那个进程一直在内存当中。如果你发现某个进程的CMD后面接上<defunct>时,就代表该进程是僵尸进程,例如:

1  2598  2598  2598 ?          -1 Ss      0  0:00 /usr/sbin/hcid<defunct>

当系统不稳定的时候就容易造成所谓的僵尸进程,可能是因为程序写的不好,或者用户操作不当所造成的。如果系统出现很多僵尸进程,记得要找出父进程,然后好好跟踪,好好优化主机环境。如果实在不行就只有reboot了。

二、动态进程:top

top命令格式

 top [-d | -bnp] 
-d:表示界面刷新时间,单位秒,默认是5秒 
-b:以批次的方式进行top,还有更多的参数可以使用 
    通常会搭配数据重定向来讲批处理的结果输出成为文件 
-n:与-b搭配,意思是需要进行几次top的输出结果 
-p:查看直接进程,后面接进程号 
  ?:显示在top当中可以输入的按键命令 
  P:以cpu使用率来排名 
  M:以内存的使用率来排名 
  N:以PID来排名 
  T:以进程使用CPU时间累加排名 
  k:给予某个PID一个信号 
  r:给予某个PID重新制定一个nice值 
  q:退出离开

  1. www.linuxidc.com @Ubuntu:~$ top 
  2.  
  3. top – 10:44:15 up  2:24,  6 users,  load average: 2.09, 2.70, 2.98 
  4. Tasks: 209 total,   3 running, 206 sleeping,   0 stopped,   0 zombie 
  5. Cpu(s): 29.9%us, 17.4%sy,  0.0%ni, 52.4%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%st 
  6. Mem:   5046272k total,  4752156k used,   294116k free,  1291300k buffers 
  7. Swap:   262140k total,       16k used,   262124k free,  1516100k cached 
  8.  
  9.   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                           
  10.  2813 zhouyl    20   0 1269m 200m  41m R   28  4.1  33:49.24 compiz                                                                                             
  11.  1478 root      20   0  247m 130m  18m S   18  2.6  25:49.51 Xorg                                                                                               
  12.  3972 zhouyl    20   0 1707m  71m  35m S   10  1.5  14:19.49 vlc                                                                                               
  13.  3218 zhouyl    20   0  806m 158m  49m S    6  3.2  16:19.85 chrome                                                                                             
  14.  3607 zhouyl    20   0  985m 130m  27m S    6  2.6   2:05.07 chrome 

这里有六行
第一行:表示现在时间,系统开机到现在的时间,多少登陆用户。负载均衡,在1、5、15分钟系统平均运行几个进程的意思,越小代表系统越闲置,若高于1得注意你的系统压力是否太过繁复了
第二行:表示系统共运行了多少进程,他们分别的运行状态,注意后面的zombie一般为0如果为其他数,就要注意了,看看到是那个进程是僵尸进程
第三行:表示当下CPU整体负载,需要特别注意的是%wa,这个选项代表的是I/Owait,通常你的系统会变慢都是I/O产生的问题比较大,如果你是多核设备可以按“1”切换查看不同的CPU负载情况
第四行与第五行:表示物理内存与虚拟内存使用的情况,swap的使用要越低越好,如果swap使用率较高表示物理内存不足

第六行:
PID:是进程ID
USER:该进程所属用户
PR:priority的缩写,进程的优先级,值越小优先级越高
NI:nice的缩写,与priority有关,值越小优先级越高
%CPU:CPU的使用率
%MEM:内存使用率
TIME+:CPU使用时间的累加
值得注意的是:在top中输入h或者?,可以显示帮助

三、查看进程树命令:pstree

pstree命令格式

pstree [-A|U] [-up] 
-A:各进程间连接用ASCII字符连接 
-U:该进程之间连接用utf8字符连接 
-p:同时显示PID 
-u:同时列出每个进程的所属账号名称 

  1. www.linuxidc.com @Ubuntu:~$ pstree -Aup 
  2. init(1)-+-NetworkManager(1344)-+-dhclient(1707) 
  3.         |                      |-dnsmasq(2560,nobody) 
  4.         |                      |-dnsmasq(2645,nobody) 
  5.         |                      |-{NetworkManager}(1374) 
  6.         |                      `-{NetworkManager}(1708) 
  7.         |-accounts-daemon(2184)—{accounts-daemon}(2185) 
  8.         |-acpid(1417) 
  9.         |-atd(1429,daemon) 
  10.         |-avahi-daemon(1331,avahi)—avahi-daemon(1332) 
  11.         |-bamfdaemon(2892,zhouyl)—{bamfdaemon}(2896) 
  12.         |-bluetoothd(1319) 
  13.         |-chrome(3218,zhouyl)-+-chrome(3313) 
  14.         |                     |-chrome(3690)-+-{chrome}(3693) 
  15.         |                     |              |-{chrome}(3694) 
  16.         |                     |              `-{chrome}(3695) 
  17.         |                     |-chrome(3718)-+-{chrome}(3719) 
  18.         |                     |              |-{chrome}(3720) 
  19.         |                     |              `-{chrome}(3721) 
赞(0) 打赏
转载请注明出处:服务器评测 » Linux查看进程总结
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏