Linuxコマンド辞典 vmstatコマンド(システム管理)

仮想メモリの統計情報を表示する「vmstat」コマンドの概要と使い方を記載しています。

RHEL Fedora CentOS Vine Deblan Ubuntu Plamo

参考サイト:Man page of INSTALL

概要・使用方法

書式

$ vmstat [オプション] [間隔[回数]]

システムのプロセス/メモリ/スワップ/I/O/ページング/CPUの状況を表示します。コマンドの引数の「間隔」は表示を更新する秒数を指定します。指定しない場合は起動時の状態を表示してプロセスを終了します。「回数」は更新表示する回数を指定します。

デフォルトの状態では主に6つの項目を表示します。

仮想メモリ統計情報の項目

$ vmstat

実行結果

[sunarin@sunarin ~]$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  0      0 2491264   3236 1419448    0    0     2     2    2   47  0  0 99  0  0
[sunarin@sunarin ~]$ 
大項目項目説明
procsr実行待ちのプロセス数
b割込み不可能なスリーブ状態にあるプロセス数
memoryswpdスワップの総容量(Kバイト)
free空きメモリ容量(Kバイト)
buffバッファに使用されている容量(Kバイト)
cacheキャッシュに使われている容量(Kバイト)
inact非アクティブなメモリ容量(-aオプション利用時)
activeアクティブなメモリ容量(-aオプション利用時)
swapsiスワップインされている容量(kB/秒)
soスワップアウトされている容量(kB/秒)
iobiブロックデバイスに送られたブロック数(blocks/秒)
boブロックデバイスから送られたブロック数(blocks/秒)
systemin割込み回数/秒(1秒当たり)
csコンテキストスィッチ回数/秒(1秒当たり)
cpuusユーザプロセスがCPUを使用している時間の割合(%)
syカーネルがCPUを使用している時間の割合(%)
idCPUがアイドル状態の時間の割合(%)
waディスクI/Oの待ち時間(%)
st仮想マシンがリソース要求したが割当されなかった時間(%)

ディスクモードの表示

大項目項目説明
readstotal成功した読み込み回数
merged一度のI/Oでグループ化した読み込み回数
sectores成功した読み込みセクタ数
ms読み込み使用した時間(ミリ秒)
writestotal成功した書き出し総数
merged一度のI/Oでグループ化した読み込み回数
sectors書き込み成功したセクタ数
ms書き出しに使用した時間(ミリ秒)
IOcur実行中のI/O
sI/Oに使用した時間(秒)

$ vmstat -d

実行結果

[sunarin@sunarin ~]$ vmstat -d
disk- ------------reads------------ ------------writes----------- -----IO------
       total merged sectors      ms  total merged sectors      ms    cur    sec
sda    34770     58 2350642   10015 145595  22731 2903552  161659      0    120
sr0       10      0       4       3      0      0       0       0      0      0
dm-0   33486      0 2248201    8685 167770      0 2898808  141481      0    120
dm-1      98      0    4440      22      0      0       0       0      0      0
[sunarin@sunarin ~]$ 

パーティションモードの表示

-pオプションを指定するとパーティションの統計情報を表示します。

項目説明
readsこのパーティションからの読み込み回数
read sectorsこのパーティションからの読み込みセクタ数
writesこのパーティションへの書き込み回数
requested writesこのパーティションへの書き込み要求数

$ vmstat -p /dev/sda2

実行結果

[sunarin@sunarin ~]$ vmstat -p /dev/sda2
sda2            reads      read sectors      writes  requested writes
                34469           2259185      125995           2902224
[sunarin@sunarin ~]$ 

オプション

-a
–active
デフォルトでは「buff」と「cache」を「inact」と「active」で表示する
-f
–forks
起動してからのfork数を表示する
-m
–slabs
スラブ情報を表示する
-n
–one-header
ヘッダーを一度だけ表示する
-s
–stats
すべてのカウンタ/メモリ状態をテーブル形式で表示する
-d
–disk
ディスクの状態を表示する
-D
–dsik-sum
ディスクの状態をテーブル形式で表示する
-p デバイス
–partition デバイス
パーティションの状態を表示する
-S 文字
–unit 文字
出力する単位をk(1,000)、K(1,024)、m(1,000,000)、M(1,048,576)で指定する
-t
–timestamp
タイムスタンプを末尾に追加する
-w
–wide
80文字以上表示する端末用に幅広に表示する

2秒おきに3回、システムの状況を表示する

$ vmstat 2 3

実行結果

[sunarin@sunarin ~]$  vmstat 2 3
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 3  0      0 2490736   3236 1419560    0    0     2     2    2   47  0  0 99  0  0
 0  0      0 2490728   3236 1419560    0    0     0     0    1  240  0  1 99  0  0
 0  0      0 2490224   3236 1419560    0    0     0     0   11  246  1  0 99  0  0
[sunarin@sunarin ~]$