1.命令作用
简单的类似top的I/O监控(simple top-like I/O monitor);用来显示实时的磁盘活动;
2.命令安装
# 默认未安装
# 联网情况
yum install epel-release # 安装epel-release,会将epel的yum源文件下载到/etc/yum.repos.d
yum install iotop # 读取到上面的yum源,安装iotop命令
# 非联网情况,下载对应的rpm软件包,上传软件包,使用rpm -ivh安装
3.命令语法
Usage: iotop [OPTIONS]
4.参数详解
OPTION:
- --version,显示程序的版本号并退出
- -h, --help,显示此帮助消息并退出
- -o, --only,只显示实际执行I/O的进程或线程
- -b, --batch,非交互模式
- -n NUM, --iter=NUM,结束前的迭代次数[默认无限]
- -d SEC, --delay=SEC,迭代之间的延迟[默认1秒]
- -p PID, --pid=PID,要监控的进程/线程的PID[默认是所有]
- -u USER, --user=USER,要监控的用户名称[默认所有]
- -P, --processes,只显示进程,而不是所有线程
- -a, --accumulated,显示累计I/O,而不是显示带宽
- -k, --kilobytes,使用千字节而不是人类友好的单位
- -t, --time,在每行上添加时间戳(意味-b非交互式)
- -q, --quiet,抑制进程标题行(意味-b非交互式)
交互模式控制键:
- 使用左箭头和右箭头键可切换排序列
- 按 r 键,反转排序顺序
- 按 o 键,可切换 --only 选项,仅显示一行
- 按 p 键,可切换 --processes 选项,第一列PID、TID切换
- 按 a 键可切换 --accumulated 选项,磁盘读写的速率和大小切换
- 按 i 键可更改 I/O 优先级
- 按 q 键可退出
- 其他任何键则会强制刷新
5.常用用例
5.1.交互输出详解
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
12562 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.08 % [kworker/1:2]
1 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % systemd --switched-root --system --deserialize 22
2 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd]
3 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/0]
输出主要分两部分:
- 系统级 I/O 概览
- 进程级 I/O 详情
5.1.1.系统级 I/O 概览
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
输出解释:
- Total DISK READ,系统总读取带宽;所有进程和内核线程的读请求总和(含缓存操作)
- Total DISK WRITE,系统总写入带宽;所有进程和内核线程的写请求总和(含缓存操作)
- Actual DISK READ,实际物理磁盘读取带宽;磁盘硬件实际执行的读操作(排除缓存影响)
- Actual DISK WRITE,实际物理磁盘写入带宽;磁盘硬件实际执行的写操作(排除缓存影响)
- Current DISK READ/WRITE,当前磁盘读写带宽(部分版本),等同于 "Actual" 值,表示实时硬件 I/O
关键差异:
- Total,包含内核缓存操作(如 Page Cache),可能高于Actual
- Actual,反映真实磁盘负载,若持续过高可能引发性能瓶颈
5.1.2.进程级 I/O 详情
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
12562 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.08 % [kworker/1:2]
1 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % systemd --switched-root --system --deserialize 22
2 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd]
3 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/0]
输出解释:
- TID,线程/进程ID;默认显示线程ID;-P参数可切换为PID,或者交互模式p切换到PID
- PRIO,I/O优先级和调度策略;如 be/4:
- be (Best Effort),默认调度策略
- 4 Nice值(范围 0–7,越小优先级越高)
- USER,进程所有者;启动进程的用户名(-u 可筛选指定用户)
- DISK READ,进程读取速率;单位默认为B/s(-k 切换为 KB/s)
- DISK WRITE,进程写入速率;同上,反映实时I/O带宽
- SWAPIN,交换等待百分比;进程等待Swap交换数据的时间占比(过高需警惕内存不足)
- IO>,I/O 等待百分比;进程因 I/O 操作阻塞的时间占比(核心指标,>20% 可能表示磁盘瓶颈)
- COMMAND,进程名称或命令行;默认缩略显示,按 c 键可切换完整命令行

600

被折叠的 条评论
为什么被折叠?



