功能说明:用于统计系统I/O状态信息,常用于分析磁盘性能。
语 法:iostat [options]
补充说明:也能显示CPU使用情况。
选 项:
-c 仅显示CPU使用情况
-d 仅显示设备利用率
-k 显示状态以千字节每秒为单位,而不使用块每秒
-m 显示状态以兆字节每秒为单位
-p 仅显示块设备和所有被使用的其他分区的状态
-t 显示每个报告产生时的时间
-V 显示版号并退出
-x 显示扩展状态
参 数:
实 例:
显示当前时刻所有设备使用情况:
$ iostat -x
Linux 6.8.0-45-generic (Ubuntu22-VirtualBox) 2024年10月18日 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.10 0.02 0.27 0.01 0.00 99.60
Device r/s rkB/s rrqm/s %rrqm r_await rareq-sz w/s wkB/s wrqm/s %wrqm w_await wareq-sz d/s dkB/s drqm/s %drqm d_await dareq-sz f/s f_await aqu-sz %util
loop0 0.00 0.00 0.00 0.00 0.00 1.21 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop1 0.00 0.00 0.00 0.00 0.07 2.88 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop10 0.02 0.05 0.00 0.00 0.02 3.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop11 0.00 0.00 0.00 0.00 0.29 4.80 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop12 0.00 0.00 0.00 0.00 0.24 7.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop13 0.00 0.01 0.00 0.00 0.27 13.64 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop14 0.00 0.00 0.00 0.00 0.46 12.07 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop15 0.00 0.16 0.00 0.00 0.04 50.89 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop16 0.00 0.00 0.00 0.00 0.32 18.27 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop17 0.00 0.00 0.00 0.00 0.06 8.36 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop2 0.00 0.00 0.00 0.00 0.05 2.88 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop3 0.00 0.00 0.00 0.00 0.06 4.50 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop4 0.00 0.03 0.00 0.00 0.20 13.73 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop5 0.00 0.00 0.00 0.00 0.23 14.72 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop6 0.00 0.23 0.00 0.00 0.55 52.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop7 0.00 0.01 0.00 0.00 0.03 3.79 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop8 0.00 0.01 0.00 0.00 0.05 3.89 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
loop9 0.02 0.36 0.00 0.00 0.16 19.87 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sda 0.30 10.96 0.10 24.42 0.35 36.60 0.51 23.23 0.64 55.59 0.41 45.13 0.00 0.00 0.00 0.00 0.00 0.00 0.13 0.72 0.00 0.02
输出结果中的字段解释:
Device 设备名称
rrqm/s 每秒需要读取需求的数量
wrqm/s 每秒需要写入需求的数量
r/s 每秒实际读取需求的数量
w/s 每秒实际写入需求的数量
rsec/s 每秒读取区段的数量
wsec/s 每秒写入区段的数量
rkB/s 每秒实际读取的大小,单位为KB
wkB/s 每秒实际写入的大小,单位为KB
avgrq-sz 需求的平均大小区段
avgqu-sz 需求的平均队列长度
await 等待I/O平均的时间(milliseconds)
svctm I/O需求完成的平均时间
%util 被I/O需求消耗的CPU百分比
显示当前时刻设备sda使用情况:
$ iostat -x /dev/sda
Linux 6.8.0-45-generic (Ubuntu22-VirtualBox) 2024年10月18日 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.10 0.02 0.27 0.01 0.00 99.60
Device r/s rkB/s rrqm/s %rrqm r_await rareq-sz w/s wkB/s wrqm/s %wrqm w_await wareq-sz d/s dkB/s drqm/s %drqm d_await dareq-sz f/s f_await aqu-sz %util
sda 0.30 10.95 0.10 24.42 0.35 36.60 0.51 23.21 0.64 55.57 0.41 45.09 0.00 0.00 0.00 0.00 0.00 0.00 0.13 0.72 0.00 0.02
可以使用-d选项不显示cpu使用情况,只显示设备的使用情况:
$ iostat -xd /dev/sda
Linux 6.8.0-45-generic (Ubuntu22-VirtualBox) 2024年10月18日 _x86_64_ (2 CPU)
Device r/s rkB/s rrqm/s %rrqm r_await rareq-sz w/s wkB/s wrqm/s %wrqm w_await wareq-sz d/s dkB/s drqm/s %drqm d_await dareq-sz f/s f_await aqu-sz %util
sda 0.30 10.95 0.10 24.42 0.35 36.60 0.51 23.21 0.64 55.57 0.41 45.09 0.00 0.00 0.00 0.00 0.00 0.00 0.13 0.72 0.00 0.02
显示系统整体I/O状态信息:
$ iostat
Linux 6.8.0-45-generic (Ubuntu22-VirtualBox) 2024年10月18日 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.10 0.02 0.27 0.01 0.00 99.60
Device tps kB_read/s kB_wrtn/s kB_dscd/s kB_read kB_wrtn kB_dscd
loop0 0.00 0.00 0.00 0.00 17 0 0
loop1 0.00 0.00 0.00 0.00 1000 0 0
loop10 0.02 0.05 0.00 0.00 22978 0 0
loop11 0.00 0.00 0.00 0.00 456 0 0
loop12 0.00 0.00 0.00 0.00 367 0 0
loop13 0.00 0.01 0.00 0.00 4052 0 0
loop14 0.00 0.00 0.00 0.00 495 0 0
loop15 0.00 0.16 0.00 0.00 68346 0 0
loop16 0.00 0.00 0.00 0.00 1681 0 0
loop17 0.00 0.00 0.00 0.00 301 0 0
loop2 0.00 0.00 0.00 0.00 991 0 0
loop3 0.00 0.00 0.00 0.00 1786 0 0
loop4 0.00 0.03 0.00 0.00 15142 0 0
loop5 0.00 0.00 0.00 0.00 1148 0 0
loop6 0.00 0.23 0.00 0.00 102514 0 0
loop7 0.00 0.01 0.00 0.00 2567 0 0
loop8 0.00 0.01 0.00 0.00 2434 0 0
loop9 0.02 0.36 0.00 0.00 155861 0 0
sda 0.81 10.95 23.21 0.00 4791860 10157237 0
只显示CPU的I/O状态:
$ iostat -c
Linux 6.8.0-45-generic (Ubuntu22-VirtualBox) 2024年10月18日 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.10 0.02 0.27 0.01 0.00 99.60
以兆字节每秒为单位显示:
$ iostat -m
Linux 6.8.0-45-generic (Ubuntu22-VirtualBox) 2024年10月18日 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.10 0.02 0.27 0.01 0.00 99.60
Device tps MB_read/s MB_wrtn/s MB_dscd/s MB_read MB_wrtn MB_dscd
loop0 0.00 0.00 0.00 0.00 0 0 0
loop1 0.00 0.00 0.00 0.00 0 0 0
loop10 0.02 0.00 0.00 0.00 22 0 0
loop11 0.00 0.00 0.00 0.00 0 0 0
loop12 0.00 0.00 0.00 0.00 0 0 0
loop13 0.00 0.00 0.00 0.00 3 0 0
loop14 0.00 0.00 0.00 0.00 0 0 0
loop15 0.00 0.00 0.00 0.00 66 0 0
loop16 0.00 0.00 0.00 0.00 1 0 0
loop17 0.00 0.00 0.00 0.00 0 0 0
loop2 0.00 0.00 0.00 0.00 0 0 0
loop3 0.00 0.00 0.00 0.00 1 0 0
loop4 0.00 0.00 0.00 0.00 14 0 0
loop5 0.00 0.00 0.00 0.00 1 0 0
loop6 0.00 0.00 0.00 0.00 100 0 0
loop7 0.00 0.00 0.00 0.00 2 0 0
loop8 0.00 0.00 0.00 0.00 2 0 0
loop9 0.02 0.00 0.00 0.00 152 0 0
sda 0.81 0.01 0.02 0.00 4679 9920 0