linux-tutorial/docs/linux/cli/iostat.md

71 lines
2.5 KiB
Markdown
Raw Permalink Normal View History

2020-03-10 22:54:15 +08:00
# iostat
监视系统输入输出设备和 CPU 的使用情况
## 补充说明
**iostat 命令** 被用于监视系统输入输出设备和 CPU 的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出 CPU 使用情况。同 vmstat 一样iostat 也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。
### 语法
```shell
iostat(选项)(参数)
```
### 选项
```shell
-c仅显示CPU使用情况
-d仅显示设备利用率
-k显示状态以千字节每秒为单位而不使用块每秒
-m显示状态以兆字节每秒为单位
-p仅显示块设备和所有被使用的其他分区的状态
-t显示每个报告产生时的时间
-V显示版号并退出
-x显示扩展状态。
```
### 参数
- 间隔时间:每次报告的间隔时间(秒);
- 次数:显示报告的次数。
### 实例
用`iostat -x /dev/sda1`来观看磁盘 I/O 的详细情况:
```shell
iostat -x /dev/sda1
Linux 2.6.18-164.el5xen (localhost.localdomain)
2010年03月26日
avg-cpu: %user %nice %system %iowait
%steal %idle
0.11 0.02 0.18 0.35
0.03 99.31
Device: tps Blk_read/s Blk_wrtn/s
Blk_read Blk_wrtn
sda1 0.02 0.08
0.00 2014 4
```
详细说明:第二行是系统信息和监测时间,第三行和第四行显示 CPU 使用情况(具体内容和 mpstat 命令相同)。这里主要关注后面 I/O 输出的信息,如下所示:
| 标示 | 说明 |
| -------- | ----------------------------------- |
| 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 百分比 |