Linux iotop 命令教程:监控磁盘 I/O 活动 📊
iotop
是一个 Linux 命令行工具,用于实时监控系统的磁盘 I/O(输入/输出)活动。它类似于 top
命令,但专注于显示与磁盘 I/O 相关的进程及其行为。通过 iotop
,你可以查看哪个进程正在占用磁盘带宽,有助于进行性能分析和故障排除。
1. 简介
iotop
可以实时显示各个进程对磁盘的读取与写入活动。它非常适用于系统管理员和开发者,帮助他们识别哪些进程可能会导致磁盘性能问题,或者查找 I/O 密集型应用。💻
可惜界面太古老, 不太现代化。你可以通过 apt install iotop
安装它。
iotop 的基本语法
sudo iotop [选项]
注意:
iotop
需要 root 权限才能获取系统的 I/O 活动信息,因此需要使用sudo
。
2. 常见操作概览 📋
操 作 | 命令格式 | 说明 |
---|---|---|
启动 iotop | sudo iotop | 启动 iotop 命令,实时显示磁盘 I/O 活动。 |
显示特定进程的 I/O 信息 | sudo iotop -p <PID> | 显示指定进程(由进程号 PID 确定)的 I/O 活动。 |
以批处理模式运行 | sudo iotop -b | 启动批处理模式,适用于将输出保存到文件。 |
显示更详细的信息 | sudo iotop -o | 只显示正在进行 I/O 操作的进程。 |
刷新间隔设置 | sudo iotop -d <秒数> | 设置显示刷新时间间隔(单位为秒)。 |
显示所有 I/O 活动 | sudo iotop -a | 显示所有进行 I/O 操作的进程,包括后台进程。 |
3. 命令示例 ⚡
3.1 启动 iotop
基本的命令格式是直接运行 iotop
:
sudo iotop
这将显示一个实时更新的进程列表,其中包含每个进程的磁盘 I/O 活动,如读取速度(READ
)、写入速度(WRITE
)以及总 I/O 消耗(IO
)。你可以按 q
键退出。
3.2 显示特定进程的 I/O 信息
如果你只关心某个进程的 I/O 活动,可以使用 -p
选项:
sudo iotop -p 1234
这个命令会显示进程 ID 为 1234 的进程的磁盘 I/O 活动。
3.3 启动批处理模式
如果你想将 iotop
的输出保存到文件中进行后续分析,可以使用批处理模式 -b
选项:
sudo iotop -b -n 10 > iotop_output.txt
这个命令会以批处理模式运行 iotop
,并将输出保存到 iotop_output.txt
文件中。-n 10
指定了运行的次数(10 次)。
3.4 显示正在进行 I/O 操作的进程
如果你只关心当前正在进行磁盘 I/O 操作的进程,可以使用 -o
选项:
sudo iotop -o
此命令只会显示当前正在执行磁盘 I/O 操作的进程。
3.5 设置刷新间隔
你可以设置 iotop
刷新的时间间隔,单位为秒。默认情况下,iotop
每秒刷新一次:
sudo iotop -d 2
这将使得显示的内容每 2 秒刷新一次。