在缺少 iotop 的情况下,哪个命令最适合获取 I/O 有界进程

vni*_*x27 10 linux performance

建议我列出 io 有界进程的最佳方式。我知道 iotop 是获取列表的最佳方式,但想要任何替代选项,因为我的系统显示了大量 D 状态进程。

小智 12

您可以通过查看/proc/[pid]/io文件来检查任何进程的 IO 使用情况。例子:

$ cat /proc/1775/io
read_bytes: 4366336
write_bytes: 45056
cancelled_write_bytes: 229376
Run Code Online (Sandbox Code Playgroud)

  • 您必须实际在 `python` 上设置 `cap_net_admin` 才能使其工作。例如`setcap cap_net_admin+ep /usr/bin/python2.7`。 (3认同)
  • `iotop` 现在需要运行 NET_ADMIN 功能(或 sudo/root),所以这是一个很好的选择,而不是使用 `setcap cap_net_admin+ep /usr/sbin/iotop` 我猜......谢谢!! (2认同)

poi*_*bit 10

重复:Linux - 我如何查看等待磁盘 IO 的内容查看该 URL 以获得简单的解决方案。

您可以启用磁盘 I/O 日志记录,将 1 放入/proc/sys/vm/block_dump. 然后tail -f /var/log/syslog会给你读和写(进程、pid、操作、块和设备)。完成后不要忘记/proc/sys/vm/block_dump归零。