1. 程式人生 > >磁盤I/O高居不下,通過什麽來查看占用I/O的進程?

磁盤I/O高居不下,通過什麽來查看占用I/O的進程?

監控命令

iotop命令是一個用來監視磁盤I/O使用狀況的top類工具。iotop具有與top相似的UI,其中包括PID、用戶、I/O、進程等相關信息。Linux下的IO統計工具如iostat,nmon等大多數是只能統計到per設備的讀寫情況,如果你想知道每個進程是如何使用IO的就比較麻煩,使用iotop命令可以很方便的查看。 iotop使用Python語言編寫而成,要求Python2.5(及以上版本)和Linux kernel2.6.20(及以上版本)。iotop提供有源代碼及rpm包

yum install iotop -y 即可安裝


命令選項

-o:只顯示有io操作的進程

-b:批量顯示,無交互,主要用作記錄到文件。

-n NUM:顯示NUM次,主要用於非交互式模式。

-d SEC:間隔SEC秒顯示一次。

-p PID:監控的進程pid。

-u USER:監控的進程用戶。


範例

# iotop -o

Total DISK READ: 0.00 B/s | Total DISK WRITE: 195.81 M/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND                                                                
64250 be/4 root        0.00 B/s    8.97 M/s  0.00 % 99.99 % [flush-8:0]
64267 be/4 root        0.00 B/s  197.79 M/s  0.00 % 87.11 % dd if=/dev/zero of=/tmp/1G bs=1M count=3000
  411 be/3 root        0.00 B/s   35.60 K/s  0.00 % 63.68 % [jbd2/sda3-8]

#iotop 會列出所有進程按照IO占用的從大到小排序。

可以通過命令選項交互式切換顯示方式

#iotop -o 更人性化一些,只列出占用IO最高的,並且用占用情況的。


本文出自 “活著” 博客,轉載請與作者聯系!

磁盤I/O高居不下,通過什麽來查看占用I/O的進程?