iotop详解
有时我们希望知道到底哪个进程产生了IO,这个时候就需要iotop这个工具了。
它的输出和top命令类似,简单直观。官网:http://guichaz.free.fr/iotop/
需要Python 2.5(及以上版本)和 Linux kernel 2.6.20(及以上版本),TASK_DELAY_ACCT,CONFIG_TASKSTATS,TASK_IO_ACCOUNTING,CONFIG_VM_EVENT_COUNTERS这些内核选项开启。
[root@roger-lab ~]# yum -y install iotop
直接执行:
Total DISK READ: 43.14 M/s | Total DISK WRITE: 0.00 B/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
8275 be/4 root 43.12 M/s 0.00 B/s 0.00 % 84.28 % dd if=/dev/sda of=/dev/null
8281 be/4 root 18.65 K/s 0.00 B/s 0.00 % 3.24 % python /usr/bin/iotop
1 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % init
2 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd]
3 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [migration/0]
4 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/0]
5 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [migration/0]
6 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [watchdog/0]
7 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [events/0]
8 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [cgroup]
9 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [khelper]
10 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [netns]
11 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [async/mgr]
12 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [pm]
13 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [sync_supers]
14 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [bdi-default]
15 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kintegrityd/0]
16 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kblockd/0]
17 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kacpid]
18 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kacpi_notify]
19 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kacpi_hotplug]
20 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ata/0]
21 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ata_aux]
...
看起来没有什么难度,照例把man翻译一遍:
名称
iotop - 简单的top类I/O监视器
总览
iotop [OPTIONS]
描述
iotop根据Linux内核(需要2.6.20及以上)来监测I/O,并且能显示当前进程/线程的I/O使用率。
Linux内核build的事后哦,需要开启CONFIG_TASK_DELAY_ACCT和CONFIG_TASK_IO_ACCOUNTING选项,这些选项依赖于CONFIG_TASKSTATS。
在采样周期里,iotop按列显示每个进程/线程的I/O读写带宽,同时也显示进程/线程做swap交换和等待I/O所占用的百分比。
每一个进程都会显示I/O优先级(class/level),另外在最上面显示每个采样周期内的读写带宽。
使用左右箭头来改变排序,r用来改变排序顺序,o用来触发--only选项,p用来触发--processes选项。
a用来触发--accumulated选项,q用来退出,i用来改变进程或线程的监测优先级,其它任继健是强制刷新。 选项
--version 显示版本号然后退出
-h, --help 显示帮助然后退出
-o, --only 只显示正在产生I/O的进程或线程。除了传参,可以在运行过程中按o生效。
-b, --batch 非交互模式,一般用来记录日志
-n NUM, --iter=NUM 设置监测的次数,默认无限。在非交互模式下很有用
-d SEC, --delay=SEC 设置每次监测的间隔,默认1秒,接受非整形数据例如1.1
-p PID, --pid=PID 指定监测的进程/线程
-u USER, --user=USER 指定监测某个用户产生的I/O
-P, --processes 仅显示进程,默认iotop显示所有线程
-a, --accumulated 显示累积的I/O,而不是带宽
-k, --kilobytes 使用kB单位,而不是对人友好的单位。在非交互模式下,脚本编程有用。
-t, --time 加上时间戳,非交互非模式。
-q, --quiet 禁止头几行,非交互模式。有三种指定方式。
-q 只在第一次监测时显示列名
-qq 永远不显示列名。
-qqq 永远不显示I/O汇总。
iotop详解的更多相关文章
- Linux进程实时IO监控iotop命令详解
介绍 Linux下的IO统计工具如iostat, nmon等大多数是只能统计到per设备的读写情况, 如果你想知道每个进程是如何使用IO的就比较麻烦. iotop 是一个用来监视磁盘 I/O 使用状况 ...
- 一文详解 Linux 系统常用监控工一文详解 Linux 系统常用监控工具(top,htop,iotop,iftop)具(top,htop,iotop,iftop)
一文详解 Linux 系统常用监控工具(top,htop,iotop,iftop) 概 述 本文主要记录一下 Linux 系统上一些常用的系统监控工具,非常好用.正所谓磨刀不误砍柴工,花点时间 ...
- 【转】Zabbix 3.0 从入门到精通(zabbix使用详解)
[转]Zabbix 3.0 从入门到精通(zabbix使用详解) 第1章 zabbix监控 1.1 为什么要监控 在需要的时刻,提前提醒我们服务器出问题了 当出问题之后,可以找到问题的根源 网站/ ...
- Linux就业技术指导(五):Linux运维核心管理命令详解
一,Linux核心进程管理命令 1.1 ps:查看进程 1.1.1 命令解释 功能说明 ps命令用于列出执行ps命令的那个时刻的进程快照,就像用手机给进程照了一张照片.如果想要动态地显示进程,就需要使 ...
- 云计算:Linux运维核心管理命令详解
云计算:Linux运维核心管理命令详解 想做好运维工作,人先要学会勤快: 居安而思危,勤记而补拙,方可不断提高: 别人资料不论你用着再如何爽那也是别人的: 自己总结东西是你自身特有的一种思想与理念的展 ...
- Linq之旅:Linq入门详解(Linq to Objects)
示例代码下载:Linq之旅:Linq入门详解(Linq to Objects) 本博文详细介绍 .NET 3.5 中引入的重要功能:Language Integrated Query(LINQ,语言集 ...
- 架构设计:远程调用服务架构设计及zookeeper技术详解(下篇)
一.下篇开头的废话 终于开写下篇了,这也是我写远程调用框架的第三篇文章,前两篇都被博客园作为[编辑推荐]的文章,很兴奋哦,嘿嘿~~~~,本人是个很臭美的人,一定得要截图为证: 今天是2014年的第一天 ...
- EntityFramework Core 1.1 Add、Attach、Update、Remove方法如何高效使用详解
前言 我比较喜欢安静,大概和我喜欢研究和琢磨技术原因相关吧,刚好到了元旦节,这几天可以好好学习下EF Core,同时在项目当中用到EF Core,借此机会给予比较深入的理解,这里我们只讲解和EF 6. ...
- Java 字符串格式化详解
Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...
随机推荐
- 转:python常用运维脚本实例
python常用运维脚本实例 转载 file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函 ...
- windows 7 IIS 7.0 装好后,HTTP Error 503. The service is unavailable.
IIS 7.0 装好后,出现 以上问题. 解决办法,如下图,设置应用程序池 ,
- angular学习笔记(十一)-表达式
本篇只要介绍angular表达式: 在之前的例子中,我们多半是直接把数据作为angular标识符的值,但其实可以使用表达式来做更多的事情: 比如: {{number}} 也可以是: {{number+ ...
- python 列表排序方法reverse、sort、sorted基础篇
python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse() ...
- ios应用下架方法(说明)
ios应用下架方法(说明) 正在审核中的: 在binary details里边 reject按钮 已经上架的: 在itunesconnect里的app详情里面找到rights and pricin ...
- 歌手右侧快速入口ABCD....
1.通过v-for将右侧内容渲染出来,并绝对定位到右侧 2.给每个li绑定touchStart事件,并绑定自定义属性data-index=index: 3.点击每个li,通过e来获取所绑定的自定义属性 ...
- 在ajax post处理文件下载
我有一个JavaScript应用程序需要使用ajax post请求发送到某个URL,然后后端会根据请求中的参数进行相应的工作,生成一个可下载的压缩包,等待下载.必须使用的ajax的原因是这里需要模拟提 ...
- 队列——PowerShell版
继续读啊哈磊<啊哈!算法>感悟系列——队列 地铁售票处排队,先来的人先到队首先买完先走,后来的人排在队尾等候后买完后走. 想买票,必须排在队尾:买完票,只能从队首离开. 这种先进先出(Fi ...
- JavaScript高级 面向对象(3)--字符编码
说明(2017.3.29): 1. 数字+上下文=信息,如果是做数学运算,就是数字,如果是输出字符串给用户,就是码表字符. 2. ASCII码,共128个数字,128个数字刚好7个二进制位(2的7次方 ...
- 章鱼哥出品—VB.NET DataGridView绑定数据源 "与货币管理器的位置关联的行不能设置为不可见" 问题的解决
DtaGridView绑定数据源后.假设想让数据条件显示的话,直接使用 My_Row.Visible = False就会出错.错误类型是 "与货币管理器的位置关联的行不能设置为不可见&qu ...