iostat 用於輸出 CPU 和磁盤 I/O 相關的統計信息。
命令格式:
iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ][ device [...] | ALL ] [ -p [ device | ALL ] ] [ interval [ count ]]
1) iostat 命令的簡單使用
iostat 命令可以顯示 CPU 和 I/O 系統的負載情況及分區狀態信息。
直接執行 iostat 命令可以顯示下面的內容:
# iostat
# iostat -xm
(帶 xm 參數顯示擴展信息並將磁盤數據有每扇區改爲每兆顯示【1扇區等於512字節】)
Linux 2.6.33.3 ((none)) 12/17/10
avg-cpu: %user %nice %system %ioswait %stcal %idle
0.05 0.00 2.00 0.03 0.00 97.92
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s
各項輸出項目的含義如下:
avg-cpu 段:
%user: 在用戶級別運行所使用 CPU 的百分比。
%nice: nice 操作所使用 CPU 的百分比。
%sys: 在系統級別(kernel)運行所使用 CPU 的百分比。
%iowait: CPU等待硬件 I/O 時,所佔用 CPU 百分比。
%idle: CPU 空閒時間的百分比。
Device段:
tps:每秒鐘發送到的 I/O 請求數
Blk_read/s:每秒讀取的 block 數
Blk_wrtn/s:每秒寫入的 block 數
Blk_read:讀入的 block 總數
Blk_wrtn:寫入的 block 總數
2) iostat 命令的參數說明
iostat 各個參數說明:
-c 僅顯示 CPU 統計信息。與 -d 選項互斥。
-d 僅顯示磁盤統計信息。與 -c 選項互斥。
-k 以 K 爲單位顯示每秒的磁盤請求數,默認單位塊。
-p device | ALL
與 -x 選項互斥,用於顯示塊設備及系統分區的統計信息,也可以在 -p 後指定一個設備名,如:
# iostat -p hda
或顯示所有設備:
# iostat -p ALL
-t 在輸出數據時,打印收集數據的時間。
-V 打印版本號和幫助信息。
-x 輸出擴展信息。
3) iostat 命令輸出項目說明
Blk_read 讀入塊的總數
Blk_wrtn 寫入塊的總數
kB_read/s 每秒從驅動器讀入的數據量,單位爲 K。
kB_wrtn/s 每秒向驅動器寫入的數據量,單位爲 K。
kB_read 讀入的數據總量,單位爲 K。
kB_wrtn 寫入的數據總量,單位爲 K。
wrqm/s 將寫入請求合併後,每秒發送到設備的寫入請求數。
r/s 每秒發送到設備的讀入請求數。
w/s 每秒發送到設備的寫入請求數。
rsec/s 每秒從設備讀入的扇區數。
wsec/s 每秒向設備寫入的扇區數。
rkB/s 每秒從設備讀入的數據量,單位爲 K。
wkB/s 每秒向設備寫入的數據量,單位爲 K。
avgrq-sz 發送到設備的請求的平均大小,單位是 扇區。
avgqu-sz 發送到設備的請求的平均隊列長度。
await I/O 請求平均執行時間,包括髮送請求和執行的時間。單位是 毫秒。
svctm 發送到設備的 I/O 請求的平均執行時間。單位是 毫秒。
%util 在 I/O 請求發送到設備期間,佔用 CPU 時間的百分比。用於顯示設備的帶寬利用率。
當這個值接近 100% 時,表示設備帶寬已經佔滿。