Linux每天一个命令:iostat
iostat用于输出CPU和磁盘I/O相关的统计信息
安装Sysstat工具包
centos: yum install sysstat
ubuntu: sudo apt-get install sysstat
iostat语法
Usage: iostat [ options ] [ <interval> [ <count> ] ]
man iostat 查看具体帮助信息
常用选项:
-c 显示CPU信息
-d 显示磁盘信息
-k/-m 显示单位kb/mb
-x 显示更为详细的信息
-p 显示系统使用的块设备及其所有分区的统计信息
interval 刷新间隔时间
count 总共显示次数
示例:
iostat:系统开机到当前执行时刻的统计信息

字段含义:
avg-cpu:总体cpu统计信息(系统开机至此刻平均统计信息);
user:用户空间cpu占用百分比
nice:进程优先级切换cpu占用百分比
system:内核空间cpu占用百分比
iowait:cpu等待磁盘写入完成时间;重点关注:该值较高时,说明IO等待比较严重,这可能磁盘大量作随机访问造成的,也可能是磁盘性能出现了瓶颈
steal:hypervisor偷取时间
idle:空闲cpu占用百分比
device:磁盘设备的IO统计信息
tps:设备每秒IO次数
KB_read/s:每秒从设备(drive expressed)读取的数据量
KB_wrtn/s:每秒向设备(driveexpressed)写入的数据量
KB_read:设备读取的总数据量
KB_wrtn:设备写入的总数量
iostat -x 1 3:每隔1S输出cpu及磁盘IO的详细信息,总共显示3次

rrqm/s:每秒进行merge(合并)的读操作数目;文件系统会对读取同块(block)的请求进行合并
wrqm/s:每秒进行merge(合并)的写操作数目
r/s:每秒完成的读I/O设备次数
w/s:每秒完成的写I/O设备次数
rkB/s:每秒读K字节数
wkB/s:每秒写K字节数
avgrq-sz:平均每次设备I/O操作的数据大小(扇区为单位)
avgqu-sz:平均I/O队列长度
await:平均每次设备I/O操作的等待时间(毫秒)
svctm:平均每次设备I/O操作的处理时间(毫秒)
%util:一秒中有百分之多少的时间用于I/O操作,或者说一秒中有多少时间I/O队列是非空的
重点关注参数:
%iowait:表示CPU等待IO时间占整个CPU周期的百分比,如果iowait值超过50%,或者明显大于%system、%user以及%idle,表示IO可能存在问题
await: 表示每次IO请求等待时间,包括等待时间和处理时间;等待时间过长,说明磁盘IO存在瓶颈或问题
svctm :表示每次IO请求处理的时间
%util :表示磁盘忙碌情况,一般该值超过80%表示该磁盘可能处于繁忙状态
参考:https://www.cnblogs.com/ultranms/p/9327784.html
***********************************************************
学习永远不晚。——高尔基
***********************************************************
Linux每天一个命令:iostat的更多相关文章
- LINUX上一个命令计算PI
Linux上一个命令计算PI – 笑遍世界 http://smilejay.com/2017/11/calculate-pi-with-linux-command/ [root@d1 goEcho]# ...
- Linux每天一个命令:grep
grep (缩写来自Globally search a Regular Expression and Print) 是一种强大的文本搜索工具,它能使用特定模式匹配(包括正则表达式)搜索文本,并默认输出 ...
- Linux每天一个命令:iperf
iperf命令 Iperf 是一个网络性能测试工具.Iperf可以测试最大TCP和UDP带宽性能,具有多种参数和UDP特性,可以根据需要调整,可以报告带宽.延迟抖动和数据包丢失.下载地址:https: ...
- Linux每天一个命令:tar
Linux tar命令简介: tar命令可以为linux的文件和目录创建档案.利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件.tar最初被用来在磁 ...
- Linux每天一个命令:cat
Linux cat命令 命令:cat cat 命令用于连接文件并打印到标准输出设备上. 使用权限 所有使用者 语法格式 cat [-AbeEnstTuv] [--help] [--version] f ...
- Linux每天一个命令:nc/ncat
nmap-ncat.x86_64版nc/ncat nc/ncat所做的就是在两台电脑之间建立链接并返回两个数据流,在这之后所能做的事就看你的想像力了.你能建立一个服务器,传输文件,与朋友聊天,传输流媒 ...
- linux 每天一个命令
Nginx [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use) 使用命令关闭占用80端口的程序 sudo fuser ...
- linux系统及命令学习
1,基本概念 Shell(命令行):是一个程序,接受键盘输入的命令,并将命令传递给操作系统进行执行. Bash:Bourne Again Shell, 是大多数linux系统分之中所带的一种shell ...
- linux常用终端命令(一)终端命令格式(二)文件和目录常用命令
一.linux终端命令格式 1.终端命令格式 command [-options] [parameter] 说明: command :命令名,相应功能的英文单词或单词的缩写 [-options] ...
随机推荐
- Maven和Solr简单总结
一.1.Maven介绍 Maven是一个项目管理工具,Maven通过POM项目对象模型,对象项目进行管理,通过一个配置文件(xml文件)进行项目的管理.对象项目的声明周期中每个阶段进行管理(清理,编译 ...
- spring学习总结——装配Bean学习一(自动装配)
一.Spring配置的可选方案 Spring容器负责创建应用程序中的bean并通过DI来协调这些对象之间的关系.但是,作为开发人员,你需要告诉Spring要创建哪些bean并且如何将其装配在一起.当描 ...
- c/c++ 数组和指针
c/c++ 数组和指针 知识点 1,数组就是指针,对应代码里的test1 2,用auto声明,得到的是指针,对应代码里的test2 3,用decltype声明,得到的不是指针 ,对应代码里的test3 ...
- 使用Navicat for Mysql连接mysql服务器
使用Navicat for Mysql连接mysql服务器 在windows上用Navicat for Mysql 连接装在虚拟机Ubuntu上的mysql服务器时出现的问题的解决方案. Navica ...
- Python中函数partial的应用
函数在执行时,要带上所有必要的参数进行调用.但是,有时参数可以在函数被调用之前提前获知.这种情况下, 一个函数有一个或多个参数预先就能用上,以便函数能用更少的参数进行调用.通过设定参数的默认值,可以降 ...
- 4.12Python数据处理篇之Matplotlib系列(十二)---绘图风格的介绍
目录 目录 前言 (一)不同风格 1.说明: 2.使用: 3.代码使用: (二)例子演示 1.dark_background 2.bmh 3.fivethirtyeight 4.ggplot 5.gr ...
- LeetCode算法题-String Compression(Java实现)
这是悦乐书的第230次更新,第242篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第97题(顺位题号是443).给定一组字符,就地压缩它.压缩后的长度必须始终小于或等于原 ...
- Python爬虫-01:爬虫的概念及分类
目录 # 1. 为什么要爬虫? 2. 什么是爬虫? 3. 爬虫如何抓取网页数据? # 4. Python爬虫的优势? 5. 学习路线 6. 爬虫的分类 6.1 通用爬虫: 6.2 聚焦爬虫: # 1. ...
- JavaScript数据类型之文本类型
引言 字符串(string)是一组由16位值组成的不可变的有序序列,每个字符通常来自于Unicode字符集.JavaScript通过字符串类型来表示文本.字符串的长度(length)是其所含16位值的 ...
- D. Equalize Them All Codeforces Round #550 (Div. 3)
D. Equalize Them All time limit per test 2 seconds memory limit per test 256 megabytes input standar ...