天天看點

Linux系統IO分析工具之iotop

iotop是一款開源、免費的用來監控磁盤I/O使用狀況的類似top指令的工具,iotop可以監控程序的I/O資訊。它是Python語言編寫的,與iostat工具比較,iostat是系統級别的IO監控,而iotop是程序級别IO監控。

1.安裝

# yum -y install iotop      

2.文法

iotop (選項)

-o:隻顯示有io操作的程序
-b:批量顯示,無互動,主要用作記錄到檔案。
-n NUM:顯示NUM次,主要用于非互動式模式。
-d SEC:間隔SEC秒顯示一次。
-p PID:監控的程序pid。
-u USER:監控的程序使用者。      

3. iotop的參數

參數 長參數 參數描述
--version 顯示版本号
-h --help 顯示幫助資訊
-o --only 隻顯示正在産生I/O的程序或線程,運作過程中,可以通過按o随時切換
-b --batch 非互動模式下運作,一般用來記錄日志。
-n NUM --iter=NUM 設定監控(顯示)NUM次,主要用于非互動模式。預設無限
-d SEC --delay=SEC 設定顯示的間隔秒數,支援非整數
-p PID --pid=PID 隻顯示指定程序(PID)的資訊
-u USER --user=USER 顯示指定的使用者的程序的資訊
-P --processes 隻顯示程序,不顯示所有線程
-a --accumulated 累積的I/O,顯示從iotop啟動後每個程序累積的I/O總數,便于診斷問題
-k --kilobytes 顯示使用KB機關
-t --time 非互動模式下,加上時間戳。
-q --quiet 隻在第一次監測時顯示列名. 去除頭部一些行:這個參數可以設定最多3次來移除頭部行:-q列頭部隻在最初互動顯示一次;-qq列頭部不顯示;-qqq,I/O的總結不顯示

iotop常用快捷鍵:

左右箭頭:改變排序方式,預設是按IO排序。

  • r:改變排序順序。
  • o:隻顯示有IO輸出的程序。
  • p:程序/線程的顯示方式的切換。
  • a:顯示累積使用量。
  • q:退出。

iotop的栗子

1、隻顯示正在産生I/O的程序

# iotop -o      
Linux系統IO分析工具之iotop

2、使用非互動模式将iotop指令輸出資訊寫入日志 

# nohup iotop -b -o -n 10 -d 5      
# iotop -oP