CentOS系统资源监控软件四大软件
一、进程信息
关于进程的基础知识,用图来显示
二、ps命令
ps -报告系统进程运行时状态。
ps [选项]:
选项有三种风格:风格不一样写法不一样,有的加-,有的不加,比较特殊。
UNIX 风格选项, 可以组团选择,但必须以“-”开头
BSD 风格选项, 可以组团选择,但不能以“-”开头
GNU 风格选项, 必须以两个“-”开头
选项1:BSD风格选项
a:所有与终端相关的进程;
x:所有与终端无关的进程;
u:以用户为中心组织进程状态信息显示;
常用组合之一:aux
# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 19364 1588 ? Ss Mar28 0:01 /sbin/init root 2 0.0 0.0 0 0 ? S Mar28 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? S Mar28 0:00 [migration/0] root 4 0.0 0.0 0 0 ? S Mar28 0:00 [ksoftirqd/0] root 5 0.0 0.0 0 0 ? S Mar28 0:00 [stopper/0] root 6 0.0 0.0 0 0 ? S Mar28 0:00 [watchdog/0] root 7 0.0 0.0 0 0 ? S Mar28 0:37 [events/0] root 8 0.0 0.0 0 0 ? S Mar28 0:00 [cgroup] root 9 0.0 0.0 0 0 ? S Mar28 0:00 [khelper] ... ...
显示结果字段:
%CPU:累计CPU时间比例;
%MEM:占总内存比例;
VSZ:虚拟内存集;
RSS:Resident Size,常驻内存集;不能被放到交换内存上的部分。
STAT:BSD风格
R:running or runnable
S:interruptable sleeping
D:uninterruptable sleeping
T:Stopped
Z:zombie
+:前台进程
l:多线程进程
N:低优先级进程
<:高优先级进程
s:session leader 会话主导进程
选项2:unix风格
-e:显示所有进程
-f:显示完整格式的进程信息
-F:显示完整格式的进程信息;
-H:以层级结构显示进程的相关信息;
常用组合之二:-ef
# ps -eF|head -10 UID PID PPID C SZ RSS PSR STIME TTY TIME CMD root 1 0 0 4841 1588 0 Mar28 ? 00:00:01 /sbin/init root 2 0 0 0 0 0 Mar28 ? 00:00:00 [kthreadd] root 3 2 0 0 0 0 Mar28 ? 00:00:00 [migration/0] root 4 2 0 0 0 0 Mar28 ? 00:00:00 [ksoftirqd/0] root 5 2 0 0 0 0 Mar28 ? 00:00:00 [stopper/0] root 6 2 0 0 0 0 Mar28 ? 00:00:00 [watchdog/0] root 7 2 0 0 0 0 Mar28 ? 00:00:37 [events/0] root 8 2 0 0 0 0 Mar28 ? 00:00:00 [cgroup] root 9 2 0 0 0 0 Mar28 ? 00:00:00 [khelper]
显示结果字段分析
PSR:运行于哪颗CPU之上
C:cpu utilization
stime:启动时间
time:总时间
常用组合之三:-eFH
# ps -eFH |head -3 UID PID PPID C SZ RSS PSR STIME TTY TIME CMD root 2 0 0 0 0 0 3月22 ? 00:00:00 [kthreadd] root 3 2 0 0 0 0 3月22 ? 00:00:10 [ksoftirqd/0]
常用组合之四:-eo, axo
-o field1, field2,...:自定义要显示的字段列表,以逗号分隔;
常用的field:pid, ni, pri, psr, pcpu, stat, comm, tty, ppid, rtprio
ni:nice值;
priority:priority, 优先级;
rtprio:real time priority,实时优先级;
# ps -eo pid,ppid,ni,priority,comm|head -10 PID PPID NI PRI COMMAND 1 0 0 20 init 2 0 0 20 kthreadd 3 2 - -100 migration/0 4 2 0 20 ksoftirqd/0 5 2 - -100 stopper/0 6 2 - -100 watchdog/0 7 2 0 20 events/0 8 2 0 20 cgroup 9 2 0 20 khelper
三、top命令:
top - display Linux tasks,动态排序的,默认以CPU排序
# top -n 1 -d 3 top - 06:38:09 up 11:19, 3 users, load average: 0.00, 0.00, 0.00 Tasks: 149 total, 1 running, 148 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3%us, 0.3%sy, 0.0%ni, 99.0%id, 0.4%wa, 0.0%hi, 0.1%si, 0.0%st Mem: 1004348k total, 901860k used, 102488k free, 54220k buffers Swap: 2031612k total, 0k used, 2031612k free, 631540k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 19364 1588 1268 S 0.0 0.2 0:01.95 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 20 0 0 0 0 S 0.0 0.0 0:00.30 ksoftirqd/0 5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 stopper/0 6 root RT 0 0 0 0 S 0.0 0.0 0:00.33 watchdog/0 7 root 20 0 0 0 0 S 0.0 0.0 0:38.21 events/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper 10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns 11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr 12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm
top - 21:25:19 up 2 days, 11:38,
2 users, # 在线用户
load average: 0.00, 0.00, 0.00 # 等待运行队列长度,长期单个CPU超过3,表明CPU不够用了
Tasks: 136 total,
1 running, 135 sleeping, 0 stopped, 0 zombie
Cpu(s):
0.0%us, #用户空间
0.3%sy, #系统空间
0.0%ni, #优先级用户运行比例
99.7%id, #空闲百分比
0.0%wa, #等待I/O时间
0.0%hi, #硬件中断时间
0.0%si, #软件中断时间
0.0%st #被偷走的时间---虚拟化偷走CPU时间
Mem: 1004348k total, 679264k used, 325084k free, 143004k buffers
Swap: 2031612k total, 0k used, 2031612k free, 222668k cached
首部信息调整:
uptime信息:l键开启或关闭显示
tasks及cpu信息:t键调整显示
内存信息:m键调整显示
CPU信息分CPU显示:1键开启或关闭显示
修改刷新时间间隔:秒为单位,默认为3s
终止指定的进程:k
退出命令:q
选项:
-d #:指定刷新时间间隔,默认为3秒;怎么退出?q
-b:以批次方式显示;
-n #:显示多少批次;
四、htop命令
top升级版,方便好用的top,额外安装
选项:
-d #:指定延迟时间间隔;
-u UserName:仅显示指定用户的进程;
-s COLUME:以指定字段进行排序;
子命令:
l:显示选定的进程打开的文件列表;
s:跟踪选定的进程的系统调用;
t:以层级关系显示各进程状态;
a:将选定的进程绑定至某指定的CPU核心;
dstat命令:集大成的资源监控原件
- versatile tool for generating system resource statistics
dstat [-afv] [options..] [delay [count]]
常用选项:
-c, --cpu:显示cpu相关信息;
-C #,#,...,total:显示CPU某个核心的相关信息
-d, --disk:显示磁盘的相关信息
-D sda,sdb,...,tobal
-g:显示page相关的速率数据;
-m:Memory的相关统计数据
-n:Interface的相关统计数据;
-p:显示process的相关统计数据;
-r:显示io请求的相关的统计数据;
-s:显示swapped的相关统计数据;
--tcp
--udp
--raw
--socket
--ipc
--top-cpu:显示最占用CPU的进程;
--top-io:最占用io的进程;
--top-mem:最占用内存的进程;
--top-lantency:延迟最大的进程;
# dstat -dmnrs
-dsk/total- ------memory-usage----- -net/total- --io/total- ----swap---
read writ| used buff cach free| recv send| read writ| used free
5891B 18k| 273M 0 577M 128M| 0 0 |0.25 0.60 |1176k 1023M