linux进程状态分析工具,Linux下常用的系统性能查看分析工具

Linux中,很多很全面显示系统当前运行状态,负载,I/O等信息的工具,帮助管理员实时了解系统运行动态,以及排除故障。

ps命令:显示进程状态,快照方式显示。

进程分为两类:一类是用户通过终端启动的进程,一类是与终端无关的进程,多为守护进程。

ps命令支持两种风格的命令:SysV风格 BDS风格。带横线的是SysV风格。

ps命令选项:

a  :与终端有关的进程

x  : 与终端无关的进程

u  : 显示是哪个用户启动的

-e : 显示所有进程

-f :完整格式列表显示信息

-F :显示额外信息

-H :显示进程层次结构

-o :自定义显示信息

#ps aux | more

USER       PID       %CPU         %MEM          VSZ        RSS   TTY     STAT        START          TIMECOMMAND

root         1       0.0           0.1           19356     1544   ?        Ss          17:00          0:02/sbin/init

root         2      0.0           0.0           0          0?               S          17:00          0:00[kthreadd]

……

USER: 进程相关用户

PID:  进程号

%CPU: CPU占用百分比

%MEM: 内存占用百分比

VSZ:  占用虚拟内存大小

RSS:   常驻内存集,不可被交换的内存

TTY:  与哪个终端相关

STAT:  进程状态

R:运行状态

S:可中断睡眠

D:不可中断睡眠

T:停止的

Z:僵尸进程

s:会话首进程

+:前台进程

l: 多线程进程

N:低优先级进程

<:>

START:启动运行时间

TIME;  运行时长

COMMAND:由哪个命令启动的此进程,如果COMMAND包含在方括号中,则表示是内核进程

#ps -ef | more

UID        PID PPID  C STIME TTY          TIME CMD

root         1    0  0 17:00 ?        00:00:02 /sbin/init

root         2    0  0 17:00 ?        00:00:00 [kthreadd]

PPID:父进程

STIME:启动时间

TIME: 执行累计时间

自定义显示信息

#ps axo pid,command

PID COMMAND

1 /sbin/init

2 [kthreadd]

3 [migration/0]

4 [ksoftirqd/0]

……

查看httpd进程是否启动,可以使用grep命令拼接。‘

#ps -ef | grep httpd

root      1746    1  0 17:00 ?        00:00:01 /usr/sbin/httpd

apache    1753 1746  0 17:00 ?        00:00:00 /usr/sbin/httpd

pgrep命令:检查在系统的中活动进程pgrep命令参数

-U UID:指定用户启动的进程

-G GID:指定组相关的进程

-t:     显示终端相关的进程

-l:     同时显示进程号和程序名

#pgrep -U dhcpd

1638

top命令:是Linux下的分析工具,实时监控系统性能资源占用情况

# top

top - 21:42:26 up 4:42,  3 users,  load average: 0.00, 0.00, 0.00

Tasks: 170 total,  1 running, 169 sleeping,   0stopped,   0 zombie

Cpu(s): 0.2%us,  0.3%sy,  0.0%ni, 99.5%id,  0.0%wa, 0.0%hi,  0.0%si,  0.0%st

Mem:   1016320ktotal,   666004k used,   350316k free,    41344k buffers

Swap:  2097144ktotal,        0k used,  2097144k free,   365124k cached

第一行:系统负载

107c26a156582b6388ba642fde708878.png

第二行:进程信息

46ffe168901582d74d53e74aa866733b.png

第三行:CPU使用百分比

937fbf9e7e00bb04bed4392c112f1fc5.png

第四行:内存信息

978bce83a8c1ab13dc155719a279dab7.png

htop命令:

需要自己手动安装rpm包或者源码包,CentOS6.5的系统光盘里是没有的。命令行选项

-C:使用一个单色的配色方案

-d:设置延迟更新时间,单位秒

-h:显示htop 命令帮助信息

-u:只显示一个给定的用户的过程

-p:只显示给定的PIDs

-s:依此列来排序

-v:显示版本信息

例如:

# htop -d 1 就会1秒刷新1次。

# htop -v

htop 1.0.1 - (C) 2004-2011 Hisham Muhammad

Released under the GNU GPL.

交互式命令:

u: 交互式选择显示指定用户的进程

l: 显示光标所在进程所打开的文件列表

s: 显示光标所在进程执行的系统调用

a: 绑定进程到指定的CPU

#:快速定位光标至PID为#的进程上

931e5b8732ed02f37102ba0e157d858c.png

vmstat:虚拟内存状态信息

9aa53db1041f8eada5c6b0a386870243.png

iftop:流量监控工具命令选项

-i:指定要监控的网卡设备名

-B:以bytes为单位显示流量

-n:不显示主机名而是显示IP地址

-N:说是默认显示端口,我也始终没看明白怎么用(don'tconvert port numbers to services)

-F:指定显示某网段的流量

c57f6242f71fb07aee095974a3f2d2b5.png

dstat:全能型监控工具-c:显示cpu统计数据

-d: 显示磁盘数据

-g: 显示page的统计数据

-i: 显示中断的数据

-m:显示内存

-s: 交换内存

-p: 显示进程队列

--ipc:显示进程间消息队列,信号量和共享内存的使用情况

-DDISK:只显示指定disk的统计数据

-y: 系统状态数据

-n: 显示网络接口

-Neth0:仅显示指定网络接口的使用情况

-f:以完整格式显示所有信息

网络连接状态统计,例如 dstat --tcp

--tcp

--udp

--raw

--unix

1e31cf72e11b449a91fff3744008883f.png

补:检查了下有部分解释被logo遮住了,解释如下。

CPU使用百分比被遮住部分:用户空间占用CPU百分比。

dstat命令被遮住部分:磁盘读/写实时频率。

总结:Linux常用监控工具很多,扫描端口的,捕获数据流量包的,命令多少会使用一些,但是出来的结果根本看不懂,只是提一下几个命令。

nmap:扫描开方端口的工具。

nc  ncat:左右感觉和nmap差不多。

tcpdump:分析流量数据包工具。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值