Monitoring
如何列出最消耗 IO 的文件?
我的文件管理軟體正在執行大量 IO,我想知道它訪問的文件最多。
是否有一個 Linux 工具可以每隔幾秒鐘給我一個最常用的 IO 消耗文件列表,比如 iotop 但對於文件?
這可能看起來像:
$ thetool THRPUT R/W/SWP FILE 40MB/s write /usr/alfresco/repo/1283421/1324928.doc 12MB/s read /usr/alfresco/cache/3928dh29f8if 11MB/s read /tmp/239398hf2f024f472.tmp
我查看了 , 的手冊頁,
iotop
它們似乎沒有提供這樣的功能。lsof``strace
我認為您的“字節數”指標是錯誤的。考慮兩個訪問。一個從文件中讀取 10MB。另一個讀取前 10MB 文件的每 512 個字節。第一次訪問的“字節數”將是第二次訪問的 512 倍。然而,它們都會對 I/O 子系統施加完全相同的負載。
如果您可以接受與“字節數”一樣好或一樣壞的“操作數”,那麼您就可以實際測量一些東西。該
inotifywatch
程序會執行此操作,並且它可能是您的發行版inotify-tools
軟體包的一部分。它會立即告訴您哪些文件包含大部分訪問權限,並且可能會幫助您解決實際問題。