IOSTAT
NAME:Iostat,报告CPU的统计,和I/O的统计。语法:iostat [ -c ] [ -d ] [ -N ] [ -n ] [ -h ] [ -k | -m ] [ -t] [ -V ] [ -x ] [ -y ] [ -z ] [ -j { ID | LABEL | PATH |UUID | ... } [ device [...] | ALL ] ] [ device [...] | ALL] [ -p [ device [,...] | ALL ] ] [ interval [ count ] ]选项:-c只显示CPU使用报表-d只显示设备使用报表-N显示注册的device mapped名称。-n显示网络文件系统(NFS)报告-h让NFS报告人家容易读(试了一下加不加-h没啥区别)-j{ ID | LABEL | PATH | UUID | ... } [ device [...] | ALL]指定persistent device names类型,可以指定设备后者所有设备-k以KB为单位显示每秒写入读取量-m以MB为单位显示每秒写入读取量-p使用-p选项输入设备名,报告设备和设备的分区。ALL表示系统定义所有的设备和分区。如果-j使用在这个参数前,那么device会使用指定的persistent name类型(If option -j is defined before this option, devices entered on the command line can be specified with the chosen persistent name type.)。-t打印每个报表生成的时间-V打印工具版本 -x 显示扩展信息-y忽略首次报告,统计间隔时间内的数据-z忽略在采样期间不活跃的device说明:通过interval来指定间隔时间,听过count来指定间隔时间内发生的次数,如果没有指定count那么就认为是无数次。默认iostat的首次报告是启动到现在的一个统计值,除非指定了-y,第一次报表被抛弃。接下来的报告是上次报告到现在时间间隔内的计数。报告:报告有3中:CPU,设备,NFSCPU:CPU报表是一个总值,多CPU也只会返回一条。%user用户级别的使用比例%nice花费在nice有限级别的cpu比例%system系统级别的使用比例%iowaitCPU空闲,而系统在请求设备的时间%steal当hypervisor为另外一个虚拟处理器提供服务的时候,无意识的等待虚拟CPU或者CPU的比率%idelCPU空闲比率Device:报告是基于物理设备或者分区的。如果不写明device或者分区会报告所有使的到的分区,如果写了关键字ALL就会报告所有定义过的tps:每秒钟的传输,传输是到设备的IO请求,多个逻辑请求可以组合成一个传输,传输的大小不确定Blk_read/s(rsec/s):每秒钟读取的块(2.4之后块和扇区一样大),扇区大小为512BBlk_wrtn/s(wsec/s):每秒钟写入的块(2.4之后块和扇区一样大),扇区大小512BBlk_read:总read次数Blk_wrtn:总写入次数kB_read/s(mB_read/s,rkb/s,rMb/s):每秒读取字节数kB_wrtn/s(mB_wrtn/s,wkb,wmb/s):每秒写入字节数kB_read(mB_read):总读取字节数kB_wrtn(mB_wrtn):总写入字节数rrqm/s:每秒读队列长度wrqm/s:每秒写队列长度r/s:每秒请求到设备的读次数w/s:每秒请求到设备的写次数avgrq-sz:平均请求扇区数avgqu-sz:平均请求队列长度await:从请求发送到被处理所用的时间,包含在队列中的时间Svctm:Man中说这个值不靠谱,不再解释%util:当被请求到设备的时候cpu使用率,如果设备饱和,这个值接近100%NFS:不是这次的重点不扯参考:http://man.ddvip.com/linux/Mandrakelinuxref/PRocess-priority.htmlman帮助新闻热点
疑难解答