iotop使用詳解

iotop是top和iostat程序的混合體,可以顯示系統中全部運行進程並將進程根據I/O統計信息排序。ios

這個軟件使用了Linux內核的一些新特性,因此須要2.6.20或者更新的內核。編程

通常默認狀況下沒有安裝這個程序,安裝方法:ui

[root@host2 ~]# yum -y install iotop

安裝完成後,直接輸入iotop就能夠看到信息:spa

Total DISK READ :    0.00 B/s | Total DISK WRITE :       0.00 B/s
Actual DISK READ:    0.00 B/s | Actual DISK WRITE:       0.00 B/s
   TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND                                                                                                                      
     1 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % systemd --switched-root --system --deserialize 21
     2 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kthreadd]
     3 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [ksoftirqd/0]
     5 be/0 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kworker/0:0H]
     7 rt/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [migration/0]
     8 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [rcu_bh]
…………
…………

各個參數說明:線程

  -o, --only只顯示正在產生I/O的進程或線程。除了傳參,能夠在運行過程當中按o生效。
  -b, --batch非交互模式,通常用來記錄日誌。
  -n NUM, --iter=NUM設置監測的次數,默認無限。在非交互模式下頗有用。
  -d SEC, --delay=SEC設置每次監測的間隔,默認1秒,接受非整形數據例如1.1。
  -p PID, --pid=PID指定監測的進程/線程。
  -u USER, --user=USER指定監測某個用戶產生的I/O。
  -P, --processes僅顯示進程,默認iotop顯示全部線程。
  -a, --accumulated顯示累積的I/O,而不是帶寬。
  -k, --kilobytes使用kB單位,而不是對人友好的單位。在非交互模式下,腳本編程有用。
  -t, --time 加上時間戳,非交互非模式。
  -q, --quiet 禁止頭幾行,非交互模式。有三種指定方式。
  -q 只在第一次監測時顯示列名
  -qq 永遠不顯示列名。
  -qqq 永遠不顯示I/O彙總。
交互按鍵:
  和top命令相似,iotop也支持如下幾個交互按鍵。
  left和right方向鍵:改變排序。  
  r:反向排序。
  o:切換至選項--only。
  p:切換至--processes選項。
  a:切換至--accumulated選項。
  q:退出。
  i:改變線程的優先級。日誌

一些經常使用輸入例子:code

#時間刷新間隔3秒,輸出3次
[root@host2 ~]# iotop -d 3 -n 3 #非交互式,輸出3次,間隔3秒,輸出到屏幕,也可輸出到日誌文本,用於監控某時間段的io信息
[root@host2 ~]# iotop -botq -n 3 -d 3
#非交互式,輸出pid爲53754
[root@host2 ~]# iotop -botq  -p53754
相關文章
相關標籤/搜索