Linux iostat 命令用法

2021/7/15 7:07:36

本文主要是介绍Linux iostat 命令用法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

# man iostat

NAME

iostat - Report Central Processing Unit (CPU) statistics and input/output statistics for devices and partitions.
报告CPU及输入、输出设备及分区的状态。

SYNOPSIS
iostat [ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ] [ -j { ID | LABEL | PATH | UUID | ... } ] [ [ -T ] -g group_name ] [ -p [ device [,...] | ALL ] ] [ device
[...] | ALL ] [ interval [ count ] ]


实例:

1、显示 CPU 及 I/O 设备相关信息(仅显示1次):

# iostat

 

2、每隔3秒钟显示一次 CPU 及 IO 设备相关信息,直到按 Ctrl+C 键终止。

# iostat 3

 

3、每隔3秒钟显示一次 CPU 及 IO 设备相关信息,显示2次后终止。

# iostat 3 2

 

4、显示 CPU 相关信息:

# iostat -c

参数释义:

%user:用户程序消耗 CPU 资源的百分比。
%nice:拥有最高优先级的用户程序,消耗 CPU 资源的百分比。
%system:系统进程消耗 CPU 资源的百分比。
%iowait:当硬盘有I/O请求等待时,空闲CPU的比例。
%steal:当CPU管理程序处理一个虚拟CPU,其它的一个或者一组虚拟CPU无意识的消耗等待,所消耗的比例。
%idle:当硬盘没有I/O请求时,空闲CPU的比例。


5、显示 I/O 设备信息:

# iostat -d
# iostat -d vdb

参数释义:

tps(transfers per second):该设备每秒钟传输(I/O请求)的次数。
kB_read/s:每秒从设备(drive expressed)读取的数据量(Kilobytes);
kB_wrtn/s:每秒向设备(drive expressed)写入的数据量(Kilobytes);
kB_read:读取的总数据量(Kilobytes);
kB_wrtn:写入的总数量数据量(Kilobytes);

6、显示 I/O 设备及子设备信息:

# iostat -p
# iostat -p vdb

 

7、显示 I/O 设备扩展信息。

# iostat -x
# iostat -x vdb

参数释义:

rrqm/s:该设备每秒钟有多少读取请求被 Merge 处理。
wrqm/s:该设备每秒钟有多少写入请求被 Merge 处理。
当系统调用需要读取数据的时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge
r/s:该设备每秒钟有多少读请求(Merge处理之后的)处理完成。
w/s:该设备每秒钟有多少写请求(Merge处理之后的)处理完成。
rsec/s (rkB/s, rMB/s): 该设备每秒钟读取的扇区数(B/KB/MB)。
rsec/s (rkB/s, rMB/s): 该设备每秒钟写入的扇区数(B/KB/MB)。
avgrq-sz:平均请求扇区的大小
avgqu-sz:是平均请求队列的长度。毫无疑问,队列长度越短越好。
await:每一个IO请求的处理的平均时间(单位是毫秒)。
这里可以理解为IO的响应时间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。
这个时间包括了队列时间和服务时间,也就是说,一般情况下,await大于svctm,它们的差值越小,则说明队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。
r_await:每一个读请求的处理的平均时间(单位是毫秒)。
w_await:每一个写请求的处理的平均时间(单位是毫秒)。
svctm:表示平均每次设备I/O操作的服务时间(以毫秒为单位)。
如果svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好,如果await的值远高于svctm的值,则表示I/O队列等待太长,系统上运行的应用程序将变慢。
%util:在统计时间内所有处理IO时间,除以总共统计时间。
例如,如果统计间隔1秒,该设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。
一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。

 

[THE END]

参考文档:https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858810.html



这篇关于Linux iostat 命令用法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程