Linux编程之天天一个linux命令(47):iostat命令仓酷云
安装和登录命令:login、shutdown、halt、reboot、mount、umount、chshLinux体系中的iostat是I/Ostatistics(输出/输入统计)的缩写,iostat工具将对体系的磁盘操纵举动举行监督。它的特性是报告磁盘举动统计情形,同时也会报告出CPU利用情形。同vmstat一样,iostat也有一个缺点,就是它不克不及对某个历程举行深切剖析,仅对体系的全体情形举行剖析。iostat属于sysstat软件包。能够用yuminstallsysstat间接安装。
1.命令格局:
iostat[参数][工夫][次数]
2.命令功效:
经由过程iostat便利检察CPU、网卡、tty设备、磁盘、CD-ROM等等设备的举动情形, 负载信息。
3.命令参数:
-C显现CPU利用情形
-d显现磁盘利用情形
-k以KB为单元显现
-m以M为单元显现
-N显现磁盘阵列(LVM)信息
-n显现NFS利用情形
-p[磁盘]显现磁盘和分区的情形
-t显现终端和CPU的信息
-x显现具体信息
-V显现版本信息
4.利用实例:
实例1:显现一切设备负载情形
命令:
iostat
输入:
<br>
#iostat
Linux2.6.18-128.el5(CT1186)2012年12月28日
avg-cpu:%user%nice%system%iowait%steal%idle
8.300.025.070.170.0086.44
Device:tpsBlk_read/sBlk_wrtn/sBlk_readBlk_wrtn
sda22.7343.70487.426740357057517941952
sda10.000.000.002658536
sda20.113.743.515772159554202216
sda30.980.6117.519454172270023368
sda40.000.000.0060
sda56.950.12108.7319248341677123536
sda62.200.1831.222837260481488056
sda712.4839.04326.456020945085035104240
<br>
申明:
cpu属性值申明:
%user:CPU处在用户形式下的工夫百分比。
%nice:CPU处在带NICE值的用户形式下的工夫百分比。
%system:CPU处在体系形式下的工夫百分比。
%iowait:CPU守候输出输入完成工夫的百分比。
%steal:办理程序保护另外一个假造处置器时,假造CPU的有意识守候工夫百分比。
%idle:CPU余暇工夫百分比。
备注:假如%iowait的值太高,暗示硬盘存在I/O瓶颈,%idle值高,暗示CPU较余暇,假如%idle值高但体系呼应慢时,有多是CPU守候分派内存,此时应加年夜内存容量。%idle值假如延续低于10,那末体系的CPU处置才能绝对较低,标明体系中最必要办理的资本是CPU。
disk属性值申明:
rrqm/s:每秒举行merge的读操纵数量。即rmerge/s
wrqm/s:每秒举行merge的写操纵数量。即wmerge/s
r/s:每秒完成的读I/O设备次数。即rio/s
w/s:每秒完成的写I/O设备次数。即wio/s
rsec/s:每秒读扇区数。即rsect/s
wsec/s:每秒写扇区数。即wsect/s
rkB/s:每秒读K字节数。是rsect/s的一半,由于每扇区巨细为512字节。
wkB/s:每秒写K字节数。是wsect/s的一半。
avgrq-sz:均匀每次设备I/O操纵的数据巨细(扇区)。
avgqu-sz:均匀I/O行列长度。
await:均匀每次设备I/O操纵的守候工夫(毫秒)。
svctm:均匀每次设备I/O操纵的服务工夫(毫秒)。
%util:一秒中有百分之几的工夫用于I/O操纵,即被io损耗的cpu百分比
备注:假如%util靠近100%,申明发生的I/O哀求太多,I/O体系已满负荷,该磁盘大概存在瓶颈。假如svctm对照靠近await,申明I/O几近没有守候工夫;假如await宏大于svctm,申明I/O行列太长,io呼应太慢,则必要举行需要优化。假如avgqu-sz对照年夜,也暗示有当量io在守候。
实例2:准时显现一切信息
命令:
iostat23
输入:
<br>
#iostat23
Linux2.6.18-128.el5(CT1186)2012年12月28日
avg-cpu:%user%nice%system%iowait%steal%idle
8.300.025.070.170.0086.44
Device:tpsBlk_read/sBlk_wrtn/sBlk_readBlk_wrtn
sda22.7343.70487.426740357057517947296
sda10.000.000.002658536
sda20.113.743.515772159554202216
sda30.980.6117.519454172270023608
sda40.000.000.0060
sda56.950.12108.7319248341677125640
sda62.200.1831.222837260481488152
sda712.4839.04326.446020945085035107144
avg-cpu:%user%nice%system%iowait%steal%idle
8.880.007.940.190.0083.00
Device:tpsBlk_read/sBlk_wrtn/sBlk_readBlk_wrtn
sda6.000.00124.000248
sda10.000.000.0000
sda20.000.000.0000
sda30.000.000.0000
sda40.000.000.0000
sda50.000.000.0000
sda60.000.000.0000
sda76.000.00124.000248
avg-cpu:%user%nice%system%iowait%steal%idle
9.120.007.810.000.0083.07
Device:tpsBlk_read/sBlk_wrtn/sBlk_readBlk_wrtn
sda4.000.0084.000168
sda10.000.000.0000
sda20.000.000.0000
sda30.000.000.0000
sda40.000.000.0000
sda50.000.000.0000
sda64.000.0084.000168
sda70.000.000.0000
<br>
申明:
每隔2秒革新显现,且显现3次
实例3:显现指定磁盘信息
命令:
iostat-dsda1
输入:
#iostat-dsda1
Linux2.6.18-128.el5(CT1186)2012年12月28日
Device:tpsBlk_read/sBlk_wrtn/sBlk_readBlk_wrtn
sda10.000.000.002658536
申明:
实例4:显现tty和Cpu信息
命令:
iostat-t
输入:
<br>
#iostat-t
Linux2.6.18-128.el5(CT1186)2012年12月28日
Time:14时58分35秒
avg-cpu:%user%nice%system%iowait%steal%idle
8.300.025.070.170.0086.44
Device:tpsBlk_read/sBlk_wrtn/sBlk_readBlk_wrtn
sda22.7343.70487.416740357057517957864
sda10.000.000.002658536
sda20.113.743.515772159554202216
sda30.980.6117.519454172270024344
sda40.000.000.0060
sda56.950.12108.7319248341677128808
sda62.200.1831.222837260481488712
sda712.4839.04326.446020945085035113248
<br>
申明:
实例5:以M为单元显现一切信息
命令:
iostat-m
输入:
<br>
#iostat-m
Linux2.6.18-128.el5(CT1186)2012年12月28日
avg-cpu:%user%nice%system%iowait%steal%idle
8.300.025.070.170.0086.44
Device:tpsMB_read/sMB_wrtn/sMB_readMB_wrtn
sda22.720.020.243291193670881
sda10.000.000.0010
sda20.110.000.002818426465
sda30.980.000.014616131848
sda40.000.000.0000
sda56.950.000.05939818911
sda62.200.000.021385235102
sda712.480.020.162939912458553
<br>
申明:
实例6:检察TPS和吞吐量信息
命令:
iostat-d-k11
输入:
<br>
#iostat-d-k11
Linux2.6.18-128.el5(CT1186)2012年12月28日
Device:tpskB_read/skB_wrtn/skB_readkB_wrtn
sda22.7221.85243.713370179163758984340
sda10.000.000.001329268
sda20.111.871.762886079727101108
sda30.980.318.754727086135012508
sda40.000.000.0030
sda56.950.0654.37962481838566148
sda62.200.0915.611418630240744712
sda712.4819.52163.223010472542517559596
<br>
申明:
tps:该设备每秒的传输次数(Indicatethenumberoftransferspersecondthatwereissuedtothedevice.)。“一次传输”意义是“一次I/O哀求”。多个逻辑哀求大概会被兼并为“一次I/O哀求”。“一次传输”哀求的巨细是未知的。
kB_read/s:每秒从设备(driveexpressed)读取的数据量;
kB_wrtn/s:每秒向设备(driveexpressed)写进的数据量;
kB_read:读取的总数据量;kB_wrtn:写进的总数目数据量;
这些单元都为Kilobytes。
下面的例子中,我们能够看到磁盘sda和它的各个分区的统计数据,事先统计的磁盘总TPS是22.73,上面是各个分区的TPS。(由于是刹时值,以是总TPS其实不严厉即是各个分区TPS的总和)
实例7:检察设备利用率(%util)、呼应工夫(await)
命令:
iostat-d-x-k11
输入:
<br>
#iostat-d-x-k11
Linux2.6.18-128.el5(CT1186)2012年12月28日
Device:rrqm/swrqm/sr/sw/srkB/swkB/savgrq-szavgqu-szawaitsvctm%util
sda0.4438.590.4022.3221.85243.7123.370.041.784.209.54
sda10.000.000.000.000.000.0018.900.008.266.460.00
sda20.360.430.110.011.871.7663.570.0163.751.940.02
sda30.001.240.040.950.318.7518.420.0439.778.730.86
sda40.000.000.000.000.000.002.000.0019.6719.670.00
sda50.006.650.006.940.0654.3715.670.2636.814.483.11
sda60.001.710.012.190.0915.6114.290.0312.405.841.28
sda70.0828.560.2512.2419.52163.2229.280.2721.465.006.25
<br>
申明:
rrqm/s:每秒举行merge的读操纵数量.即delta(rmerge)/s
wrqm/s:每秒举行merge的写操纵数量.即delta(wmerge)/s
r/s:每秒完成的读I/O设备次数.即delta(rio)/s
w/s:每秒完成的写I/O设备次数.即delta(wio)/s
rsec/s:每秒读扇区数.即delta(rsect)/s
wsec/s:每秒写扇区数.即delta(wsect)/s
rkB/s:每秒读K字节数.是rsect/s的一半,由于每扇区巨细为512字节.(必要盘算)
wkB/s:每秒写K字节数.是wsect/s的一半.(必要盘算)
avgrq-sz:均匀每次设备I/O操纵的数据巨细(扇区).delta(rsect+wsect)/delta(rio+wio)
avgqu-sz:均匀I/O行列长度.即delta(aveq)/s/1000(由于aveq的单元为毫秒).
await:均匀每次设备I/O操纵的守候工夫(毫秒).即delta(ruse+wuse)/delta(rio+wio)
svctm:均匀每次设备I/O操纵的服务工夫(毫秒).即delta(use)/delta(rio+wio)
%util:一秒中有百分之几的工夫用于I/O操纵,大概说一秒中有几工夫I/O行列长短空的,即delta(use)/s/1000(由于use的单元为毫秒)
假如%util靠近100%,申明发生的I/O哀求太多,I/O体系已满负荷,该磁盘大概存在瓶颈。
idle小于70%IO压力就较年夜了,一样平常读取速率有较多的wait。
同时能够分离vmstat检察检察b参数(守候资本的历程数)和wa参数(IO守候所占用的CPU工夫的百分比,高过30%时IO压力高)。
别的await的参数也要多和svctm来参考。差的太高就必定有IO的成绩。
avgqu-sz也是个做IO调优时必要注重的中央,这个就是间接每次操纵的数据的巨细,假如次数多,但数据拿的小的话,实在IO也会很小。假如数据拿的年夜,才IO的数据会高。也能够经由过程avgqu-sz 再次,Linux是用C语言编写的,我们有学习C语言的基础,读程序和编写代码方面存在的困难小一点,也是我们能较快掌握的原因之一。? 和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。 在系统检测不到与Linux兼容的显卡,那么此次安装就可能不支持图形化界面安装,而只能用文本模式安装等等。 对我们学习操作系统有很大的帮助,加深我们对OS的理解。? Linux?最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以Linux操作系统有着广泛的应用空间。 对Linux命令熟悉后,你可以开始搭建一个小的Linux网络,这是最好的实践方法。Linux是网络的代名词,Linux网络服务功能非常强大,不论是邮件服务器、Web服务器、DNS服务器等都非常完善。 熟悉操作是日常学习Linux中的三大法宝。以下是作者学习Linux的一些个人经验,供参考: 生成新的unispimsp.ksc。”另外得到回复后如果问题解决,向帮助过你的人发个说明,让他们知道问题是怎样解决的。 随着实验课程的结束,理论课也该结束了,说实话教OS的这两位老师是我们遇到过的不错的老师(这话放这可能不太恰当). Linux高手更具有鼓励新手的文化精神。如何在Linux社区获得帮助,需要说明的是你要有周全的思考,准备好你的问题,不要草率的发问。 和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。 熟悉系统的基本操作,Linux的图形界面直观,操作简便,多加上机练习就可熟悉操作,在Linux下学习办公软件等常用软件。
页:
[1]