iostat是I/O statistics(输入/输出统计)的缩写,其主要功能是对系统的磁盘I/O操作进行监视。它的输出主要是显示磁盘读写操作的统计信息,同时也会给出CPU的使用情况。同vmstat命令一样,iostat命令也不能对某个进程进行深入分析,仅会对系统的整体情况进行分析。

iostat [option] [interval [count]]
1)在iostat命令及后面的选项里,每个元素之间都至少要有一个空格。
2)interval 表示两次输出之间的间隔时间。
3)count表示按照delay指定的时间间隔统计的次数。


iostat命令的参数选项及说明
-c    显示CPU的使用情况
-d    显示磁盘的使用情况
-k    每秒以kB为单位显示数据
-m    每秒以MB为单位显示数据
-n    显示NFS的使用情况
-t    显示每次统计的执行时间
-p    device指定要统计的磁盘设备名称,默认为所有的磁盘设备
-x    显示扩展统计


[root@cs6 ~]# iostat
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月06日 _x86_64_ (2 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle
           0.26 0.00 0.28 0.04 0.00 99.42

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 1.81 58.79 37.24 181198 114780
dm-0 6.02 55.86 37.23 172178 114752
dm-1 0.10 0.78 0.00 2400 0


以下是命令结果说明。
第1~2行中各列的含义具体如下。
%user:用户进程消耗的CPU时间百分比。
%nice:改变过优先级的进程占用的CPU时间百分比。
%system:系统(内核)进程消耗的CPU时间百分比。
%iowait:I0等待所占用的CPU时间百分比。
%steal:虚拟机强制CPU等待的时间百分比。
%idle:CPU处在空闲状态的时间百分比。
第3~4行中各列的含义如下。
tps:表示该设备每秒的传输次数,“一次传输”的意思是“一次I/O请求”,多个逻辑请求可能会被合并为“一次I/O请求”,“一次传输”请求的大小是未知的。
Blk_read/s:表示每秒读取的数据块数。
Blk_wrtn/s:表示每秒写人的数据块数。
Blkread:表示读取的所有块数。
Blk_wrtn:表示写入的所有块数。

定时显示所有信息

[root@cs6 ~]# iostat 2 3
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle
           0.24 0.00 0.26 0.04 0.00 99.47

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 1.70 51.07 36.11 182710 129196
dm-0 5.70 48.55 36.10 173690 129168
dm-1 0.08 0.67 0.00 2400 0

avg-cpu: %user %nice %system %iowait %steal %idle
           0.00 0.00 0.00 0.00 0.00 100.00

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0

avg-cpu: %user %nice %system %iowait %steal %idle
           0.00 0.00 0.00 0.00 0.00 100.00

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0

只显示磁盘统计信息。

[root@cs6 ~]# iostat -d
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 1.69 50.88 35.98 182710 129196
dm-0 5.68 48.36 35.97 173690 129168
dm-1 0.08 0.67 0.00 2400 0



[root@cs6 ~]# iostat -d -k
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)

Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 1.63 24.51 17.33 91355 64598
dm-0 5.47 23.30 17.33 86845 64584
dm-1 0.08 0.32 0.00 1200 0

[root@cs6 ~]# iostat -d -m
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)

Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
sda 1.63 0.02 0.02 89 63
dm-0 5.45 0.02 0.02 84 63
dm-1 0.08 0.00 0.00 1 0


查看扩展信息
[root@cs6 ~]# iostat -d -x -k
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)

Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
sda 0.28 2.99 0.89 0.39 19.03 13.52 50.97 0.00 1.38 1.23 1.73 0.73 0.09
dm-0 0.00 0.00 0.89 3.38 18.09 13.52 14.82 0.01 2.51 1.89 2.67 0.21 0.09
dm-1 0.00 0.00 0.06 0.00 0.25 0.00 8.00 0.00 0.09 0.09 0.00 0.09 0.00

以下是命令结果说明。
rrqm/s:每秒进行merge的读操作数目。
wrqm/s:每秒进行merge的写操作数目。
r/s:每秒完成的读I/O设备次数。
w/s:每秒完成的写I/O设备次数。
rkB/s:每秒读入的千字节数。
wkB/s:每秒写人的千字节数。
avgrq-sz:设备平均每次进行I/O操作的数据大小(扇区)。
avgqu-sz;平均I/O队列长度。
await:设备平均每次I/O操作的等待时间(毫秒)。
svctm:设备平均每次1/0操作的服务时间(毫秒)。
%util:每秒钟用于I/O操作的百分比。


只查看CPU的统计信息
[root@cs6 ~]# iostat -c
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle
           0.17 0.00 0.19 0.03 0.00 99.60













11.7 iostat: I/O信息统计的更多相关文章

  1. Linux 系统管理命令 - iostat - I/O 信息统计

    命令详解 重要星级: ★★★★☆ 功能说明: iostat 是 I/O statistics ( 输入/输出统计 ) 的缩写,其主要功能是对系统的磁盘 I/O 操作进行监视.它的输出主要是显示磁盘读写 ...

  2. S11 Linux系统管理命令

    11.1 lsof:查看进程打开的文件 11.2 uptime:显示系统的运行时间及负载 11.3 free:查看系统内存信息 11.4 iftop:动态显示网络接口流量信息 11.5 vmstat: ...

  3. zabbix使用iostat命令参数监控磁盘性能

    iostat命令 先说一个坑把,在开始监控的时候使用命令iostat -dtkx,得到的结果看上去没问题,但是在web监控窗口数据就说不变动,为啥呢,因为iostat这个命令得到的第一个数据始终是磁盘 ...

  4. linux命令整理版(拷贝)

    一.文件和目录操作命令 1.pwd 显示当前所在位置 -L 显示逻辑路径,忽略软链接文件 -P 显示物理路径时如果当前目录路径时软链接文件,则会显示软链接对应的源文件 2.cd 切换目录 cd - 回 ...

  5. Linux按照CPU、内存、磁盘IO、网络性能监测

      系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书 ...

  6. inux按照CPU、内存、磁盘IO、网络性能监测

    http://my.oschina.net/chape/blog/159640 系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长 ...

  7. centos7下zabbix4.0配置磁盘IO监控

    一:准备 1.1:安装sysstat yum -y install sysstat 1.2:安装zabbix-get yum install -y zabbix-get.x86_64 1.3:iost ...

  8. zabbix之 自动发现磁盘io util 监控

    一.iostat Zabbix并没有提供模板来监控磁盘的IO性能,所以我们需要自己来创建一个.iostat主要用于监控系统设备的IO负载情况,iostat首次运行时显示自系统启动开始的各项统计信息,之 ...

  9. Pinpoint - 应用性能管理(APM)平台实践之部署篇

    0.0 前言 国内的APM行业这两年刚刚起步,但是在国外却比较成熟了,并且由于这两年人力成本的快速提高,国内外涌现了几家非常不错的APM企业,例如APPdynamic,Dynamic,NewRelic ...

随机推荐

  1. 看过这篇剖析,你还不懂 Go sync.Map 吗?

    hi, 大家好,我是 haohongfan. 本篇文章会从使用方式和原码角度剖析 sync.Map.不过不管是日常开发还是开源项目中,好像 sync.Map 并没有得到很好的利用,大家还是习惯使用 M ...

  2. 如何写好一个 Spring 组件

    背景 Spring 框架提供了许多接口,可以使用这些接口来定制化 bean ,而非简单的 getter/setter 或者构造器注入.细翻 Spring Cloud Netflix.Spring Cl ...

  3. Android通过Web与后台数据库交互

    2021.1.27 更新 已更新新版本博客,更新内容与原文章相比有点多,因此新开了一篇博客,请戳这里. 1 背景 开发一个App与后台数据库交互,基于MySQL+原生JDBC+Tomcat,没有使用D ...

  4. 嗝,我饱了——IDEA食用指南

    1 概述 IDEA全称IntelliJ IDEA,主要用于Java开发的IDE,代码自动提示,重构,JUnit,代码分析等的功能非常牛逼,这篇文章首先介绍目前为止IDEA最新版本的特性,然后从UI,常 ...

  5. 简单的介绍一下Java设计模式:解释器模式

    目录 定义 意图 主要解决问题 优缺点 结构 示例 适用情况 定义 解释器模式是类的行为型模式,给定一个语言之后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器,客户端可以使用这个解释器来 ...

  6. HashMap、ConcurrentHashMap 1.7和1.8对比

    本篇内容是学习的记录,可能会有所不足. 一:JDK1.7中的HashMap JDK1.7的hashMap是由数组 + 链表组成 /** 1 << 4,表示1,左移4位,变成10000,即1 ...

  7. 超详细!!Spring5框架开发笔记

    Spring5开发教程 简介 spring特性 sping是轻量级的开源的JavaEE框架 Spring可以解决企业应用开发的复杂性 Sping两个核心的部分:IOC和AOC IOC:控制反转.把创建 ...

  8. 一篇博文让你学会HTML5

    HTML 什么是HTML HTML(HyperText Markup Language,超文本标记语言)是用来描述网页的一种语言,它不是一种编程语言,而是一种标记语言. 认识HTML HTML5是构建 ...

  9. Linux 究级基础入门命令整理

    Linux 究级基础入门命令整理 条条框框,三三两两,怎讷个这么多,哈哈!no zuo no die. 纯粹个人菜鸟笔记,望大神笑纳! 后续,未完!! 查看系统信息 uname -a - 查看内核/操 ...

  10. drozer浅析三:命令实现与交互

    前面走马观花的看了几个模块的源码,看到是用python(会加载自定义的java类)写的.产生2个问题:在命令行中输入command,drozer是如何去执行的:python是如何与java交互的. d ...