1,安装top
[root@localhost ~]# yum install iotop
Loaded plugins: fastestmirror
base | 3.6 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: mirrors.skyshe.cn
* updates: centos.ustc.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package iotop.noarch 0:0.6-2.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
===================================================================================================================================================================================
Package Arch Version Repository Size
===================================================================================================================================================================================
Installing:
iotop noarch 0.6-2.el7 base 52 k
Transaction Summary
===================================================================================================================================================================================
Install 1 Package
Total download size: 52 k
Installed size: 156 k
Is this ok [y/d/N]: y
Downloading packages:
iotop-0.6-2.el7.noarch.rpm | 52 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : iotop-0.6-2.el7.noarch 1/1
Verifying : iotop-0.6-2.el7.noarch 1/1
Installed:
iotop.noarch 0:0.6-2.el7
Complete!
2,只显示读写程序,执行10次,每5秒一次
[root@localhost ~]# iotop -o -n10 -d5
otal DISK READ : 0.00 B/s | Total DISK WRITE : 4.77 K/s
Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 6.96 K/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
821 be/3 root 0.00 B/s 3.18 K/s 0.00 % 0.12 % auditd -n
1479 be/4 root 0.00 B/s 1629.24 B/s 0.00 % 0.09 % mongod --dbpath=/var/local/mongodb/data --fork --logpath=/v~ter authenticationMechanisms=MONGODB-CR --auth --port 27017
20330 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.04 % [kworker/2:0]
备注:
DISK READ和DISK WRITE字段代表块设备在采样时间内的I/O带宽。SWAPIN和IO字段表示当前进程或线程花费在页面换入和等待I/O的时间。PRIO字段表示I/O优先级。Total DISK READ和Total DISK WRITE表示总的I/O读写情况
-o --only 只显示实际具有I/O操作的进程或线程。可以通过快捷键o进行控制
-b --batch 非交互式模式,可以用于保存输出结果
-n 刷新次数
-d 刷新间隔时间
-P 只显示进程,不显示线程
-p 监控指定进程或线程
-k 使用KB表示I/O带宽。默认情况下,iotop使用B/s,K/s,M/s表示I/O带宽。
-u 监控指定用户的I/O操作情况
-t 在每行输出加上时间戳
-q 只在第一次输出时显示列名称
-qq 不显示列名称
-qqq 不显示总的I/O信息
---------------------------
描述
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命令的键盘快捷键:
1、左右箭头改变排序方式,默认是按IO排序
2、r键是反向排序
3、o键是只显示有IO输出的进程
4、同样q是退出