Answers:
Iotop是满足您需求的好工具。它还允许人们在DISK READ,DISK WRITE,SWAPIN和IO(总百分比)中的任何一个上显示I / O的累计量。这是通过一个漂亮的界面:
像一样top
,演示很忙。另一件事是,它没有各种各样的选项top
(例如,我无法选择隐藏我不感兴趣的任何列),但是该工具足以满足其特定目的。
-o
(--only
)来实际过滤掉所有不执行任何I / O的任务。这使列表变得不那么拥挤
您可以使用lsof
(man lsof)。以下内容将返回所有可以写入的文件列表:
lsof | grep -e "[[:digit:]]\+w"
w
从上述使得该命令使用grep命令查找已打开供写入文件只。文件打开写作和阅读(u
)将不会被显示出来,但它们也可以被写入。如果您希望打开文件以进行写和读+写操作,我相信这就是您想要的:lsof | grep -e "[[:digit:]]\+[wu]\{1\}"
尤其是对于磁盘活动较少的情况,有必要以批处理方式使用iotop,以防止短访问线路快速消失。答案是如何在Linux中记录文件系统按文件名读取/写入的信息?显示了如何执行此操作。
到目前为止,这
iotop
是最好的整体解决方案。以下命令为您提供了使用磁盘的所有进程的实时输出。
iotop -bktoqqq -d .5
where: -b is batch mode
-k is kilobytes/s
-t adds timestamp
-o only show processes or threads actually doing I/O
-qqq removes output headers
-d .5 updates every .5 seconds
有了进程ID后,您还可以找到带有
lsof -p $PID