命令详解

重要星级:

★★★★☆

功能说明:

iotop 命令是一款实时监控磁盘 I/O 的工具, 但必须以 root 用户的身份运行。使用 iotop 命令可以很方便的查看每个进程使用磁盘 I/O 的情况。

最小化安装系统一般是没有这个命令的,需要使用 yum 命令来额外安装:  yum install -y iotop

语法格式:

    iotop [option]
iotop [选项]

说明:

在 iotop 命令及后面的选项里,每个元素之间都至少要有一个空格。

选项说明:

-o :显示正在使用 I/O 的进程或者线程,默认是显示所有。 ※
-b :非交互模式,一般用来记录日志
-n NUM:设置监测的次数,默认无限。在非交互模式下很有用
-d :设置显示的间隔秒数。
-p :只显示指定 PID 的信息。 ※
-u :显示指定用户的信息。
-P :只显示进程,一般是显示所有的线程。
-a :显示从 iotop 启动后每个线程完成了的 I/O 总数。
-k :设置显示单位为 KB。
-t :在每一行前添加一个当前的时间。

man 手册翻译:

名称
iotop - 简单的 top 类 I/O 监视器
总览
iotop [OPTIONS]
描述
iotop 根据 Linux 内核( 需要2..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.
-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汇总。

man iotop

使用范例:

不使用任何参数启动 iotop 命令( iotop ):

[root@localhost :~]# iotop 

Total DISK READ :    0.00 B/s | Total DISK WRITE :       0.00 B/s
Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 0.00 B/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
be/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % systemd --switched-root --system --deserialize
be/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd]
be/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/]
be/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kworker/:0H]
rt/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [migration/]
be/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcu_bh]
be/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcu_sched]
be/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [lru-add-drain]
rt/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [watchdog/]
rt/ root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [watchdog/]
...

以下是命令结果的具体说明:

 .Toal DISK READ :总的磁盘读取速度。
.Toal DISK WRITE :总的磁盘写入速度。
.TID :进程的 pid 值。
.PRIO :优先级。
.USER :用户。
.DISK READ :磁盘读取速度。
.DISK WRITE :磁盘写入速度。
.SWAPIN :从 swap 分区读取数据占用的百分比。
.IO :I/O 占用的百分比。
.COMMAND :消耗 I/O 的进程名。

根据 pid 查看指定进程信息 ( iotop -p pid ):

[root@localhost :~]# iotop -p 

Total DISK READ :    0.00 B/s | Total DISK WRITE :       0.00 B/s
Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 0.00 B/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % sshd: root@pts/

参考资料:

  1. iotop详解

Linux 系统管理命令 - iotop - 动态显示磁盘 I/O 统计信息的更多相关文章

  1. Linux 系统管理命令 - iftop - 动态显示网络接口流量信息

    命令详解 重要星级: ★★★★☆ 功能说明: iftop 是一款实时流量监控工具,可用于监控 TCP/IP 连接等,必须以 root 用户的身份运行.一般最小化安装系统是没有这个命令的,需要使用 yu ...

  2. 11.8 iotop:动态显示磁盘I/O统计信息

    iotop命令是一款实时监控磁盘I/O的工具,但必须以root用户的身份运行.使用iotop命令可以很方便地查看每个进程使用磁盘I/O的情况. 最小化安装系统一般是没有这个命令的,需要使用yum命令额 ...

  3. S11 Linux系统管理命令

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

  4. Linux系统管理命令

    Linux系统管理命令 命令 说明 stat 显示指定文件的相关信息,比ls命令显示内容更多 who 显示在线登录用户 hostname 显示主机名称 uname 显示系统信息 top 显示当前系统中 ...

  5. 尚学linux课程---7、linux系统管理命令

    尚学linux课程---7.linux系统管理命令 一.总结 一句话总结: 查网络:netstat -ntpl 查进程:ps 1.需要下载163yum源(从外部源同步仓库)里面的所有rpm文件? re ...

  6. Linux 系统管理命令 - vmstat - 虚拟内存统计

    命令详解 重要星级: ★★★★☆ 功能说明: vmstat 是 Virtual Memory Statistics ( 虚拟内存统计 ) 的缩写,利用 vmstat 命令可以对操作系统的内存信息.进程 ...

  7. linux系统管理命令--系统测试工具

    1.tcpdump -n  使用IP地址表示主机,而不是主机名的:使用数字port号码,而不是服务名 -i    指定要监听的网卡接口, "-i any"表示抓取全部网卡接口上的数 ...

  8. Linux 系统管理命令 - mpstat - CPU信息统计

    命令详解 重要星级: ★★★★☆ 功能说明: mpstat 是 Multiprocessor Statistics 的缩写,是一种实时系统监控工具.mpstat 命令会输出 CPU 的一些统计信息,这 ...

  9. linux iostat命令详解 磁盘操作监控工具

    Linux系统中的 iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视. 它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况. ...

随机推荐

  1. 《TCP/IP详解卷1:协议》——第1章:概述(转载)

    1.引言 很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP协议族允许它们互相进行通信.TCP/IP起源于60年代末美国政府资助的一个分组交换网络研究项目,到90年代已发展 ...

  2. python学习之-- random模块

    random模块random.random():随机打印一个小数random.randint(1,10):随机打印1-10之间的任意数字(包括1和10)random.randrange(1,10):随 ...

  3. 学习日常笔记<day11>cookie及session

    1.会话管理 1.1会话管理定义 会话管理:管理浏览器客户端和服务端之间的会话过程中产生的会话数据 域对象:实现资源之间的数据共享 request 域对象 context 域对象 1.2.会话技术 C ...

  4. powerDigner使用

    PowerDesigner是一款功能非常强大的建模工具软件,足以与Rose比肩,同样是当今最著名的建模软件之一.Rose是专攻UML对象模型的建模工具,之后才向数据库建模发展,而PowerDesign ...

  5. JAVA原始的导出excel文件,快捷通用 方便 还能够导出word文档哦

    如今导出excel基本上都是用poi了,当报表格式非常负责的时候 开发难度会加大 假设报表有格式有变化 那就更复杂了,先发现一个非常老的技术.能够解决格式复杂的报表. 实例代码例如以下: <%@ ...

  6. HOST绑定和VIP映射

    今天上线需要配置RAL,处理半天,发现是需要HOST和IP分开来配. 比如: curl -H "Host: ktvin.nuomi.com" "http://10.207 ...

  7. Java SpringMVC实现PC端网页微信扫码支付完整版

    一:前期微信支付扫盲知识 前提条件是已经有申请了微信支付功能的公众号,然后我们需要得到公众号APPID和微信商户号,这个分别在微信公众号和微信支付商家平台上面可以发现.其实在你申请成功支付功能之后,微 ...

  8. base64和图片互转

    pom.xml添加 <!-- https://mvnrepository.com/artifact/commons-codec/commons-codec --> <dependen ...

  9. 【iOS系列】-iOS中内存管理

    iOS中创建对象的步骤: 1,分配内存空间,存储对象 2,初始化成员变量 3,返回对象的指针地址 第一:非ARC机制: 1,对象在创建完成的同时,内部会自动创建一个引用计数器,是系统用来判断是否回收对 ...

  10. [IT学习]华为全连接大会2017

    1.5分钟.3分钟.1分钟倒计时. 2.20万盏纽约街头的油灯接入电网,类比未来的公司IT系统会接入云? 3.1943年,全球只要5台计算机.不会的,但是会有5多云? 4.与航空业的联盟类比,云计算的 ...