乐趣区

关于linux:Linux性能监控命令系列之-iotop

大家好!我是 Sean!

上回说到 iostat,明天讲一个和它长得很像的命令 iotop,性能也是有些相似的,iotop 是一个用来监督磁盘 I / O 应用情况的工具。

iotop(监督磁盘 I / O 应用情况的工具)

iotop 命令 是一个用来监督磁盘 I / O 应用情况的 top 类工具。iotop 具备与 top 类似的 UI,其中包含 PID、用户、I/O、过程等相干信息。Linux 下的 IO 统计工具如 iostat,nmon 等大多数是只能统计到 per 设施的读写状况,如果你想晓得每个过程是如何应用 IO 的就比拟麻烦,应用 iotop 命令能够很不便的查看。

iotop 应用 Python 语言编写而成,要求 Python2.5(及以上版本)和 Linux kernel2.6.20(及以上版本)。iotop 提供有源代码及 rpm 包,可从其官方主页下载。

CentOS 里一条命令即可装置:

yum install iotop

命令参数

-o:只显示有 io 操作的过程
-b:批量显示,无交互,次要用作记录到文件。-n NUM:显示 NUM 次,次要用于非交互式模式。-d SEC:距离 SEC 秒显示一次。-p PID:监控的过程 pid。-u USER:监控的过程用户。

iotop 罕用快捷键

 左右箭头:扭转排序形式,默认是按 IO 排序。r:扭转排序程序。o:只显示有 IO 输入的过程。p:过程 / 线程的显示方式的切换。a:显示累积使用量
q:退出。

常用命令

iotop
默认显示信息

iotop -t
减少工夫戳列

iotop -d 2 -n 3  
2s 刷新 1 次,刷新三次信息后完结

iotop -u root 
仅显示 root 用户下过程的 io 信息

iotop -a 
以累计形式显示信息,数据从 iotop 命令启动开始做计算

iotop -b > iotop.txt
非交互模式,能够用重定向间断记录一段时间的信息

iotop -k 
以 kB 单位显示读写数据信息

iotop -q 
列名称只在第一次迭代时打印

iotop -qq 
列名从不打印

iotop -qqq 
不会打印 I / O 摘要 

命令详解

默认显示信息

iotop
Total DISK READ 
Total DISK WRITE 
一方面示意了过程和内核线程之间的总的读写带宽,另一方面也示意内核块设施子系统的。Actual DISK READ
Actual DISK WRITE
示意在内核块设施子系统和上面硬件(HDD、SSD 等等)对应的理论磁盘 I/O 带宽。
TID                线程号或过程号
PRIO            线程运行时的 I / O 优先级
USER            过程所属用户
DISK READ        刷新工夫距离内读取数据量
DISK WRITE        刷新工夫距离内写入数据量
SWAPIN            每个过程的替换使用率
IO                每个过程的 I/O 利用率,蕴含磁盘和替换
COMMAND            过程名字 

减少工夫戳列

iotop -t

以 kB 单位显示读写数据信息

iotop -k

数据查看技巧
 其实 iotop 命令显示的信息非常明显了,高深莫测,我平时次要是用来具体定位到是哪个过程始终占用磁盘 IO,上次讲的 iostat 只能初步看出零碎的磁盘 IO 是否达到瓶颈,然而也不肯定到了瓶颈,而是某些过程搞怪导致的,这是能够用 iotop 间断察看过程级别的 IO 状况,就能够很快找到哪个家伙在搞怪了。

思维导图总结

明天的分享就到这里啦!感激各位的浏览!码字不易,如果本文对你有帮忙的话,帮忙点个赞吧~ 哈哈。

性能监控命令系列完结后会将思维导图分享进去,欢送关注公众号“程序员 Sean”。

退出移动版