LoginSignup
13

More than 3 years have passed since last update.

iostatコマンドの基本的な使い方

Posted at

はじめに

Linuxの iostatコマンド に使い方について書いてみました。

iostatコマンドの説明

iostatコマンドをオプションをつけずに打つと、CPU使用率と、I/Oデバイスの使用状況を表示してくれます。
上部の avg-cpu: がCUPの使用率で、下部の Device: が、デバイスの使用状況を表しています。
image.png

CPUの使用率のみ表示したい場合は、オプションに c をつけます。
iostat -c

デバイスの使用率のみ表示したい場合は、オプションに d をつけます。
iostat -d

デバイスの使用量の単位がデフォルトで kB の表示になっています。見やすくするため、 MB に変更したい場合は、オプションに m をつけます。残念ですが、 GB で表示するオプションはないようです。
iostat -dm
image.png

デバイスの項目の見方について見ていこう

 項目  説 明          
tps 1秒当たりのHDDへのI/Oリクエスト数の平均 
MB_read/s 1秒当たりのHDDへの読み出し容量の平均   
MB_wrtn/ 1秒当たりのHDDへの書き込み容量の平均   
MB_read HDDへの読み出し容量の総計        
MB_wrtn HDDへの書き込み容量の総計        

MB_read の容量が大きければ、DBにSelect文が大量に発行されていて、MD_write の容量が大きければ、DBにInsert、Update、Delete文が大量に発行されているのだなと判断できる。

表示された数字の見方には注意が必要になる。MB_read/sだが、この値は、現在リアルタイムでDBへのアクセスが発生している数値ではなく、OSが起動してから、現在までの平均値を表示しています。

現在のリアルタイムのMS_read/sを見たい場合はこういうコマンドをうつ。リアルタイムな値を1秒間隔で表示してくれます。
iostat -dm 1

ちなみにだが、このようにオプションの順番を逆にしても同じ結果を表示してくれます。
iostat 1 -dm

2秒間隔で表示したい場合は、オプションに 2 をしてすればOK。これで、2秒間の平均値が表示される事になります。

iostat 2 -dm

ちなみにだが、先頭に表示される1行目だけは、何故だが、平均値が表示されるようになっているので覚えておいて下さい。

t オプションを付けると、計測した時間を表示してくれるので、確かに、2秒間隔で表示してくれているねという事が確認できます。
iostat 2 -dmt
image.png
さて、 Device が3つ表示されています。デバイスの説明です。

Device         説 明            
sda   1台目の物理ハードディスク(プライマリ)
sdb   2台目の物理ハードディスク(セカンダリ)
loop0  ループデバイス             

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13