你知道在 Linux 中我们使用什么工具检修和监控实时的磁盘活动吗?如果 Linux 系统性能变慢,我们会用 top 命令 来查看系统性能。它被用来检查是什么进程在服务器上占有如此高的使用率,对于大多数 Linux 系统管理员来说很常见,现实世界中被 Linux 系统管理员广泛采用。

如果在进程输出中你没有看到很大的不同,你仍然有选择查看其他东西。我会建议你在 top 输出中检查 wa 状态,因为大多数时间里服务器性能由于在硬盘上的高 I/O 读和写降低了性能。如果它很高或者波动,很可能就是它造成的。因此,我们需要检查硬盘上的 I/O 活动。

我们可以在 Linux 中使用 iotop 监控所有的磁盘和文件系统的磁盘 I/O 统计。

什么是 iotop

iotop 是一个类似 top 的工具,用来显示实时的磁盘活动。

iotop 监控 Linux 内核输出的 I/O 使用信息,并且显示一个系统中进程或线程的当前 I/O 使用情况。

它显示每个进程/线程读写 I/O 带宽。它同样显示当等待换入和等待 I/O 的线程/进程花费的时间的百分比。

Total DISK READTotal DISK WRITE 的值一方面表示了进程和内核线程之间的总的读写带宽,另一方面也表示内核块设备子系统的。

Actual DISK READActual DISK WRITE 的值表示在内核块设备子系统和下面硬件(HDD、SSD 等等)对应的实际磁盘 I/O 带宽。

如何在 Linux 中安装 iotop

我们可以轻松在包管理器的帮助下安装,因为该软件包在所有的 Linux 发行版仓库中都可以获得。

对于 RHEL/CentOS 的系统,使用 YUM Command 来安装 iotop

sudo yum install iotop

在 Linux 中如何使用 iotop 命令来监控磁盘 I/O 活动/统计?

iotop 命令有很多参数来检查关于磁盘 I/O 的变化:

iotop

QQ截图20190505171042.png

如果你想检查那个进程实际在做 I/O,那么运行 iotop 命令加上 -o 或者 --only 参数。

iotop --only

QQ截图20190505171129.png

细节:

  • IO:它显示每个进程的 I/O 利用率,包含磁盘和交换。
  • SWAPIN: 它只显示每个进程的交换使用率。
最后修改:2019 年 05 月 26 日
如果觉得我的文章对你有用,请随意赞赏