Linux iotop命令詳解


 

iotop命令是一個用來監視磁盤I/O使用狀況的top類工具。iotop具有與top相似的UI,其中包括PID、用戶、I/O、進程等相關信息。Linux下的IO統計工具如iostat,nmon等大多數是只能統計到per設備的讀寫情況,如果你想知道每個進程是如何使用IO的就比較麻煩,使用iotop命令可以很方便的查看。

 

與iostat工具比較,iostat是系統級別的IO監控,而iotop是進程級別IO監控

 

注意,iotop的安裝有前提條件(如果操作系統不滿足這些條件,iotop無法正確安裝):

 1:內核版本為2.6.20或更高版本
  2:Python 2.7或更高的版本

 

iotop參數

輸入iotop -h可查看使用幫助

-o:只顯示有io操作的進程
-b:批量顯示,無交互,主要用作記錄到文件。
-n NUM:顯示NUM次,主要用於非交互式模式。
-d SEC:間隔SEC秒顯示一次。
-p PID:監控的進程pid。接進程號,監視指定進程,只會輸出該進程的統計信息。
-u USER:監控的進程用戶。
-k 使用千字節而不是人類友好單位
 

 

 

iotop使用

終端輸入命令iotop -k查看到的效果如下圖。

 

 

 

說明:


 

    Total DISK READ:總磁盤讀
    Actual DISK READ:實際磁盤讀
    Total DISK WRITE :總磁盤寫入
    Actual DISK WRITE:實際磁盤寫入
    TID列:進程PID
    USER:進程對應的用戶

 

iotop快捷鍵

 

    左右箭頭:改變排序方式,默認是按IO排序。
    r:改變排序順序。反向排序
    o:只顯示有IO輸出的進程。
    p:進程/線程的顯示方式的切換。
    a:顯示累積使用量。
    q:退出。

 

iotop的例子

 

1:只顯示正在產生I/O的進程

 

iotop -o

 

 

 通過輸出結果,我們可以清楚地知曉是什么程序在讀寫磁盤,速度以及命令行,pid 等信息。

2:使用非交互模式將iotop命令輸出信息寫入日志

#nohup iotop -b -o -n 10 -d 5 -t  > /tmp/iotop.log &

 

3.借助iotop命令找到消耗I/O最高的進程

iotop -oP

 

監控系統I/O
[root@localhost ~]# iotop

監控用戶root的I/O
[root@localhost ~]# iotop -u root

監控進程號是1的I/O
[root@localhost ~]# iotop -p 1

 

 

參考:https://www.xiaoz.me/archives/14057

https://www.cnblogs.com/kerrycode/p/11344506.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM