Linux 系统管理命令 - iotop - 动态显示磁盘 I/O 统计信息
命令详解
重要星级:
★★★★☆
功能说明:
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/
参考资料:
Linux 系统管理命令 - iotop - 动态显示磁盘 I/O 统计信息的更多相关文章
- Linux 系统管理命令 - iftop - 动态显示网络接口流量信息
命令详解 重要星级: ★★★★☆ 功能说明: iftop 是一款实时流量监控工具,可用于监控 TCP/IP 连接等,必须以 root 用户的身份运行.一般最小化安装系统是没有这个命令的,需要使用 yu ...
- 11.8 iotop:动态显示磁盘I/O统计信息
iotop命令是一款实时监控磁盘I/O的工具,但必须以root用户的身份运行.使用iotop命令可以很方便地查看每个进程使用磁盘I/O的情况. 最小化安装系统一般是没有这个命令的,需要使用yum命令额 ...
- S11 Linux系统管理命令
11.1 lsof:查看进程打开的文件 11.2 uptime:显示系统的运行时间及负载 11.3 free:查看系统内存信息 11.4 iftop:动态显示网络接口流量信息 11.5 vmstat: ...
- Linux系统管理命令
Linux系统管理命令 命令 说明 stat 显示指定文件的相关信息,比ls命令显示内容更多 who 显示在线登录用户 hostname 显示主机名称 uname 显示系统信息 top 显示当前系统中 ...
- 尚学linux课程---7、linux系统管理命令
尚学linux课程---7.linux系统管理命令 一.总结 一句话总结: 查网络:netstat -ntpl 查进程:ps 1.需要下载163yum源(从外部源同步仓库)里面的所有rpm文件? re ...
- Linux 系统管理命令 - vmstat - 虚拟内存统计
命令详解 重要星级: ★★★★☆ 功能说明: vmstat 是 Virtual Memory Statistics ( 虚拟内存统计 ) 的缩写,利用 vmstat 命令可以对操作系统的内存信息.进程 ...
- linux系统管理命令--系统测试工具
1.tcpdump -n 使用IP地址表示主机,而不是主机名的:使用数字port号码,而不是服务名 -i 指定要监听的网卡接口, "-i any"表示抓取全部网卡接口上的数 ...
- Linux 系统管理命令 - mpstat - CPU信息统计
命令详解 重要星级: ★★★★☆ 功能说明: mpstat 是 Multiprocessor Statistics 的缩写,是一种实时系统监控工具.mpstat 命令会输出 CPU 的一些统计信息,这 ...
- linux iostat命令详解 磁盘操作监控工具
Linux系统中的 iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视. 它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况. ...
随机推荐
- Codechef-ANCESTOR(树套树/CDQ分治)
题意: 给定两棵有根树,各有 N 个点.两棵树上的点分别被从 1 到 N 标号.两棵树的根均为标号为 1 的节点. 你的任务非常简单:对于每个 i,找到一个 j(j != i),使得在两棵树中 j 都 ...
- maven之基础
一.配置maven的环境 下载地址:http://maven.apache.org/download.cgi(window下载(Binary zip)的) 将maven解压,然后配置环境变量打开: 计 ...
- DTrace C++ Mysteries Solved 转
I’ve been using DTrace on Leopard in my recent work, and while it’s a great tool, the C++ support ...
- Meteor会话
会话用于当用户在使用应用程序时保存数据.当用户离开应用这些数据将被删除. 在本教程中,我们将学习如何设置会话对象,存储一些数据并返回数据.我们将使用基本的HTML设置. meteorApp/impor ...
- Failed to load session “ubuntu" 问题解决总结
最近在用Ubuntu系统,但因为手欠,将unity-2d给删除了,导致总是进不了图形界面,登陆之后显示failed to load session "ubuntu“,返回之后又回到登录界面. ...
- [正在学习开发板]分享--- iTOP-4412移植CAN
首先拷贝迅为提供的 libcanjni.tar.gz 压缩包到 android 源代码的"iTop4412_ICS/device/samsung/common"文件夹以下,然后使用 ...
- Android ListView异步载入图片乱序问题,原因分析及解决方式
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/45586553 在Android全部系统自带的控件其中,ListView这个控件算是 ...
- Spark应用远程调试
本来想用Eclipse的.然而在网上找了一圈,发现大家都在说IntelliJ怎样怎样好.我也受到了鼓励,遂决定在这台破机器上鼓捣一次IntelliJ吧. Spark程序远程调试,就是将本地IDE连接到 ...
- performSelector调用和直接调用的区别
今天在准备出笔试题的过程中随便搜了一下其他的笔试题,看到其中一个就是关于performSelector与直接调用的区别. 个人感觉这其实是一个陷阱题,因为大部分应用场景下,用哪一种都可以,可以说是没有 ...
- 如何在Visual Studio 2017中使用C# 7+语法 构建NetCore应用框架之实战篇(二):BitAdminCore框架定位及架构 构建NetCore应用框架之实战篇系列 构建NetCore应用框架之实战篇(一):什么是框架,如何设计一个框架 NetCore入门篇:(十二)在IIS中部署Net Core程序
如何在Visual Studio 2017中使用C# 7+语法 前言 之前不知看过哪位前辈的博文有点印象C# 7控制台开始支持执行异步方法,然后闲来无事,搞着,搞着没搞出来,然后就写了这篇博文,不 ...