Top top命令可以实时的动态的查看系统整体的运行状况,提供了CPU、内存、进程等资源信息。
参数选项
-b:以批处理模式操作
-c:显示完整的命令
-d:刷新间隔时间
-I:忽略失效进程
-s:保密模式
-S:累积模式
-i<time>:设置间隔时间
-u<user>:指定用户名
-p<process>:指定进程
-n<number>:循环显示的次数
交互命令
1:显示CPU详细信息
d:修改刷新频率,单位为秒
h:查看帮助
n:指定进程列表显示的行数
q:退出top命令
l:隐藏/显示第一行
t:隐藏/显示第二行和第三行
m:隐藏/显示第四行和第五行内存信息
M:根据驻留内存大小进行排序
P:根据CPU使用百分比大小进行排序
T:根据时间进行排序
k:杀死一个进程
i:忽略空闲进程和僵死进程
r:重新规划进程的优先级别
f:从当前显示中添加或者删除项目
top命令主要分为两个区域:统计信息和进程信息。统计信息为前五行,主要显示系统负载情况、进程情况、 CPU情况、MEM内存情况、SWAP交换分区情况。进程信息主要显示每个进程具体信息,默认五秒刷新一次。
第一行: 系统当前时间为9:23:14 系统运行时间为60天 当前登录的用户数为1 系统负载,即任务队列的平均长度。3个数值分别统计最近1,5,15分钟的系统平均负载
系统平均负载:单核CPU情况下,0.00 表示没有任何负荷,1.00表示刚好满负荷,超过1侧表示超负荷,理想值是0.7;
多核CPU负载:CPU核数 * 理想值0.7 = 理想负荷,例如:4核CPU负载不超过2.8何表示没有出现高负载。
第二行: 进程总数为93 活动的进程数为1 休眠的进程数为92 停止的进程数为0 僵死的进程数位0
第三行: 用户空间占用CPU百分比为0.3% 内核空间占用CPU百分比为0.2% 用户进程空间内改变过优先级的进程占用CPU百分比为0% 空闲CPU百分比为99.1% 等待占用CPU百分比为0.4% CPU服务于硬件中断所耗费的时间总额为0% CPU服务软中断所耗费的时间总额为0% 虚拟机被hypervisor偷去的CPU时间为0%
第四行: 物理内存总量为1922268k 已使用的物理内存总量为1647380k 空闲的内存总量为274888k 缓存到BUFFER中的内存总量为222392k
第五行: 交换分区的总量为0k 已使用的交换分区总量为0k 空闲的交换分区总量为0k 缓存的交换分区总量为1138584k
进程信息: PID为进程ID USER为进程持有者 PR为优先级 NI为nice值。负值表示高优先级,正值表示低优先级 VIRT为使用的虚拟内存总量,单位KB。VIRT=SWAP+RES RES为进程使用的、未被换出的物理内存大小,单位KB。RES=CODE+DATA SHR为共享内存大小,单位KB S为进程状态,D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程 %CPU上次更新到现在的CPU时间占用百分比 %MEM进程使用的物理内存百分比 TIME+进程使用的CPU时间总计,单位1/100秒
VMSTAT vmstat命令可以报告关于进程、内存、I/O等系统整体运行状态参数选项
-a:显示活动内页
-f:显示启动后创建的进程总数
-m:显示slab的信息
-n:头信息仅显示一次
-s:以表格方式显示事件计数器和内存状态
-d:报告磁盘状态
-p:显示指定的磁盘分区状态
-s:输出信息的单位
1 2 3 4 5 6 7 8 # vmstat 3 5 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 0 264820 222404 1142304 0 0 0 14 3 4 0 0 99 0 0 0 0 0 264788 222404 1142304 0 0 0 20 91 152 0 0 99 1 0 0 0 0 264812 222404 1142304 0 0 0 0 58 97 0 0 100 0 0 0 0 0 264804 222404 1142308 0 0 0 23 93 156 0 0 99 1 0 0 0 0 264804 222404 1142312 0 0 0 4 104 176 1 0 99 0 0
字段说明 Procs(进程)
Memory(内存)
swpd:使用虚拟内存大小
free:空闲物理内存
buff:用作缓冲的内存大小
cache:用作缓存的内存大小
Swap(交换分区)
si:每秒从交换区写到内存的大小,由磁盘调入内存
so:每秒写入交换区的内存大小,由内存调入磁盘
IO
system
in:每秒中断数,包括时钟中断
cs:每秒上下文切换数
CPU
us:用户进程执行时间百分比
sy:内核系统进程执行时间百分比
wa:IO等待时间百分比
id:空闲时间百分比
SAR sar(System Activity Reporter)可以报告系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动等信息。
1 2 3 4 5 6 7 8 9 sar [选项] [时间间隔] [次数] Options are: [ -A ] [ -B ] [ -b ] [ -C ] [ -d ] [ -H ] [ -h ] [ -p ] [ -q ] [ -R ] [ -r ] [ -S ] [ -t ] [ -u [ ALL ] ] [ -V ] [ -v ] [ -W ] [ -w ] [ -y ] [ -I { <int> [,...] | SUM | ALL | XALL } ] [ -P { <cpu> [,...] | ALL } ] [ -m { <keyword> [,...] | ALL } ] [ -n { <keyword> [,...] | ALL } ] [ -j { ID | LABEL | PATH | UUID | ... } ] [ -f [ <filename> ] | -o [ <filename> ] | -[0-9]+ ] [ -i <interval> ] [ -s [ <hh:mm:ss> ] ] [ -e [ <hh:mm:ss> ] ]
查看CPU
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # sar -u Linux 2.6.32-431.el6.x86_64 (OGG) 06/20/2018 _x86_64_ (1 CPU) 12:00:01 AM CPU %user %nice %system %iowait %steal %idle 12:10:01 AM all 0.74 0.00 0.63 13.99 0.00 84.63 12:20:01 AM all 0.34 0.00 0.39 16.03 0.00 83.24 12:30:01 AM all 0.30 0.00 0.41 15.04 0.00 84.25 12:40:01 AM all 0.31 0.00 0.39 14.27 0.00 85.03 12:50:01 AM all 0.30 0.00 0.38 14.85 0.00 84.48 01:00:01 AM all 0.27 0.00 0.31 11.93 0.00 87.49 01:10:01 AM all 0.66 0.00 0.49 12.86 0.00 85.99 01:20:01 AM all 0.33 0.00 0.40 14.99 0.00 84.28 01:30:01 AM all 0.31 0.00 0.38 13.55 0.00 85.76 01:40:01 AM all 0.30 0.00 0.36 16.53 0.00 82.80 01:50:03 AM all 0.32 0.00 0.37 14.22 0.00 85.09 02:00:01 AM all 0.34 0.00 0.42 13.35 0.00 85.88 02:10:01 AM all 0.58 0.00 0.47 16.77 0.00 82.18 02:20:01 AM all 0.30 0.00 0.37 14.53 0.00 84.80 02:30:01 AM all 0.28 0.00 0.36 14.41 0.00 84.95 Average: all 0.38 0.00 0.41 14.49 0.00 84.73 07:03:46 PM LINUX RESTART
查看IO
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # sar -b Linux 2.6.32-431.el6.x86_64 (OGG) 06/20/2018 _x86_64_ (1 CPU) 12:00:01 AM tps rtps wtps bread/s bwrtn/s 12:10:01 AM 10.85 0.89 9.96 37.63 118.43 12:20:01 AM 6.67 0.07 6.61 0.53 77.09 12:30:01 AM 6.34 0.05 6.29 0.42 73.14 12:40:01 AM 6.33 0.06 6.27 0.47 72.38 12:50:01 AM 6.20 0.06 6.14 0.47 71.29 01:00:01 AM 5.99 0.06 5.94 0.47 69.03 01:10:01 AM 9.80 0.34 9.45 6.27 112.46 01:20:01 AM 6.55 0.06 6.49 0.50 76.44 01:30:01 AM 6.17 0.05 6.12 0.42 70.56 01:40:01 AM 6.43 0.09 6.34 0.72 72.71 01:50:03 AM 6.16 0.06 6.10 0.44 70.67 02:00:01 AM 6.40 0.06 6.34 0.50 73.16 02:10:01 AM 9.11 0.18 8.93 1.79 106.91 02:20:01 AM 6.15 0.06 6.09 0.44 70.96 02:30:01 AM 6.32 0.09 6.23 0.69 72.53 Average: 7.02 0.14 6.87 3.36 80.36 07:03:46 PM LINUX RESTART
查看内存和交换分区
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 # sar -r Linux 2.6.32-431.el6.x86_64 (OGG) 06/20/2018 _x86_64_ (1 CPU) 12:00:01 AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit 12:10:01 AM 645304 1262276 66.17 36340 931012 939764 15.65 12:20:01 AM 649164 1258416 65.97 37136 931888 925580 15.42 12:30:01 AM 643832 1263748 66.25 37924 932328 933880 15.56 12:40:01 AM 639848 1267732 66.46 38712 932736 941116 15.68 12:50:01 AM 638700 1268880 66.52 39504 933104 941220 15.68 01:00:01 AM 637492 1270088 66.58 40280 933504 941256 15.68 01:10:01 AM 621440 1286140 67.42 41084 942484 961356 16.01 01:20:01 AM 625836 1281744 67.19 41880 943328 947140 15.78 01:30:01 AM 631308 1276272 66.91 42664 943612 931980 15.52 01:40:01 AM 630036 1277544 66.97 43452 944032 932076 15.53 01:50:03 AM 628952 1278628 67.03 44248 944388 932180 15.53 02:00:01 AM 608708 1298872 68.09 45032 944760 950768 15.84 02:10:01 AM 623620 1283960 67.31 45828 948248 933196 15.54 02:20:01 AM 618280 1289300 67.59 46620 948664 941428 15.68 02:30:01 AM 616884 1290696 67.66 47504 949104 941548 15.68 Average: 630627 1276953 66.94 41881 940213 939633 15.65 07:03:46 PM LINUX RESTART
查看网络设备状态统计信息
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [root@OGG ~]# sar -n EDEV |egrep 'eth0|IFACE' 12:00:01 AM IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s 12:10:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 12:20:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 12:30:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 12:40:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 12:50:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 01:00:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 01:10:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 01:20:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 01:30:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 01:40:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 01:50:03 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 02:00:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 02:10:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 02:20:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 02:30:01 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Average: eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
DD dd命令用于复制文件并对原文件的内容进行转换和格式化处理。
1 2 3 4 5 6 7 8 9 10 11 12 dd [选项] Options are: [if]:输入文件名 [of]:输出文件名 [ibs]:每次读取的字节数 [obs]:每次输出的字节数 [bs]:同时设置读入/输出的块大小为bytes个字节 [cbs]:一次转换bytes个字节,即指定转换缓冲区大小 [conv]:指定文件转换的方式 [count]:仅读取指定的块数 [seek]:一开始输出时,跳过指定的块数 [skip]:一开始输入时,跳过指定的块数
测试磁盘写速度
1 time dd if=/dev/zero bs=8k count=1000 of=test.file
测试磁盘读速度
1 time dd if=test.file bs=64k dd of=/dev/null