linux sar命令介绍( 二 )


例如 , 每30秒采样一次 , 连续采样5次 , 报告设备使用情况 , 需键入如下命令:
# sar -d 30 5
屏幕显示:
SCO_SV scosysv 3.2v5.0.5 i80386 10/01/2001
11:06:43 device %busy avque r w/sblks/savwait avserv (-d)
11:07:13 wd-0 1.47 2.75 4.67 14.73 5.50 3.14
11:07:43 wd-0 0.43 18.77 3.07 8.66 25.11 1.41
11:08:13 wd-0 0.77 2.78 2.77 7.26 4.94 2.77
11:08:43 wd-0 1.10 11.18 4.10 11.26 27.32 2.68
11:09:13 wd-0 1.97 21.78 5.86 34.06 69.66 3.35
Average wd-0 1.15 12.11 4.09 15.19 31.12 2.80
显示内容包括:
device: sar命令正在监视的块设备的名字 。
%busy: 设备忙时 , 传送请求所占时间的百分比 。
avque: 队列站满时 , 未完成请求数量的平均值 。
r w/s: 每秒传送到设备或从设备传出的数据量 。
blks/s: 每秒传送的块数 , 每块512字节 。
avwait: 队列占满时传送请求等待队列空闲的平均时间 。
avserv: 完成传送请求所需平均时间(毫秒) 。
在显示的内容中 , wd-0是硬盘的名字 , %busy的值比较小 , 说明用于处理传送请求的有效时间太少 , 文件系统效率不高 , 一般来讲 , %busy值高些 , avque值低些 , 文件系统
的效率比较高 , 如果%busy和avque值相对比较高 , 说明硬盘传输速度太慢 , 需调整 。
例四:使用命行sar -b t n
例如 , 每30秒采样一次 , 连续采样5次 , 报告缓冲区的使用情况 , 需键入如下命令:
# sar -b 30 5
屏幕显示:
SCO_SV scosysv 3.2v5.0.5 i80386 10/01/2001
14:54:59 bread/s lread/s %rcache bwrit/s lwrit/s %wcache pread/s pwrit/s (-b)
14:55:29 014710052178 0 0
14:55:59 018610052579 0 0
14:56:29 4232 9885886 0 0
14:56:59 012510052376 0 0
14:57:29 0 8910041266 0 0
Average1156 9952880 0 0
显示内容包括:
bread/s: 每秒从硬盘读入系统缓冲区buffer的物理块数 。
lread/s: 平均每秒从系统buffer读出的逻辑块数 。
%rcache: 在buffer cache中进行逻辑读的百分比 。
bwrit/s: 平均每秒从系统buffer向磁盘所写的物理块数 。
lwrit/s: 平均每秒写到系统buffer逻辑块数 。
%wcache: 在buffer cache中进行逻辑读的百分比 。
pread/s: 平均每秒请求物理读的次数 。
pwrit/s: 平均每秒请求物理写的次数 。
在显示的内容中 , 最重要的是蔯he和%wcache两列 , 它们的值体现着buffer的使用效率 , %rcache的值小于90或者%wcache的值低于65 , 应适当增加系统buffer的数量 , buffer
数量由核心参数NBUF控制 , 使%rcache达到90左右 , %wcache达到80左右 。但buffer参数值的多少影响I/O效率 , 增加buffer , 应在较大内存的情况下 , 否则系统效率反而得不到
提高 。
例五:使用命行sar -g t n
例如 , 每30秒采样一次 , 连续采样5次 , 报告串口I/O的操作情况 , 需键入如下命令:
# sar -g 30 5
屏幕显示:
SCO_SV scosysv 3.2v5.0.5 i8038611/22/2001
17:07:03ovsiohw/sovsiodma/sovclist/s (-g)
17:07:33 0.00 0.00 0.00
17:08:03 0.00 0.00 0.00
17:08:33 0.00 0.00 0.00
17:09:03 0.00 0.00 0.00
17:09:33 0.00 0.00 0.00
Average0.00 0.00 0.00
显示内容包括:
ovsiohw/s:每秒在串口I/O硬件出现的溢出 。
ovsiodma/s:每秒在串口I/O的直接输入输出通道高速缓存出现的溢出 。
ovclist/s :每秒字符队列出现的溢出 。
在显示的内容中 , 每一列的值都是零 , 表明在采样时间内 , 系统中没有发生串口I/O溢出现象 。
sar命令的用法很多 , 有时判断一个问题 , 需要几个sar命令结合起来使用 , 比如 , 怀疑CPU存在瓶颈 , 可用sar -u 和sar -q来看 , 怀疑I/O存在瓶颈 , 可用sar -b、sar -u和

推荐阅读