Linuxのメモリ関連コマンド
Linuxでメモリ関連の情報を調べる際にはfreeコマンド、vmstatコマンドを使用します。
それぞれのコマンドについて説明していきます。
freeコマンド
仮想メモリの使用状況を表示してくれます。
1 2 3 4 5 |
# free total used free shared buffers cached Mem: 1922204 1551928 370276 412 211852 928196 -/+ buffers/cache: 411880 1510324 Swap: 2097148 8688 2088460 |
主要なパラメータを説明していきます。
Mem … メモリ情報を表示
total … メモリの合計サイズ
used … 使っているメモリサイズ
free … 空きメモリのサイズ
shared … メモリ上に固定されている(簡単に言うとページングできない領域)サイズ
buffers … 仮想的なメモリ合計サイズ
cached … 仮想的なメモリ合計サイズ
-/+ buffers/cache … 実質的な使用メモリ・空きメモリサイズを表示
used … buffers、cachedを含めないMem行のusedサイズ。実質的な使用メモリサイズ。Memの行の「total-buffers-cached」で算出できる。
free … buffers、cachedを含めたMemのfreeサイズ。実質的な空きメモリサイズ。Memの行の「free+buffers+cached」で算出できる。
LinuxではI/Oを減らす目的で、バッファやキャッシュといった仕組みでメモリを使用するようになっている。実質的な使用メモリサイズ、空きメモリサイズを見る場合はこちらの値を参考にしたほうが良い。
Swap … スワップ領域の情報
total … スワップの合計サイズ
used … 使用しているスワップのサイズ
free … 空きスワップサイズ
vmstatコマンド
AIXでも使用できるコマンド
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# vmstat 2 10 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 8764 368392 211852 928096 0 0 0 0 0 0 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 0 52 27 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 0 43 28 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 0 47 33 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 0 47 28 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 0 47 32 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 4 46 30 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 0 46 27 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 2 54 32 0 0 100 0 0 0 0 8764 368384 211852 928096 0 0 0 0 43 30 0 0 100 0 0 |
出力結果はAIXの場合と異なります。主要なパラメータを説明していきます。
procs … カーネルスレッド(kernel threads)の略。CPUの情報を表示。AIXのvmstatでは「kthr」と表示される。
r … 実行可能で「実行キュー」に入っているプロセス数
b … 「ブロック」されているプロセス数
memory … メモリの情報を表示(KB単位)
swpd … 仮想メモリサイズ
free … 空きメモリサイズ
buff … バッファとして使われるメモリサイズ
cache … ページキャッシュとして使われるメモリサイズ
swap … スワップ情報を表示(KB/秒)
si … ディスクからスワップインしているメモリサイズ
so … ディスクへスワップアウトしているメモリサイズ
io … デバイスとの転送情報を表示(ブロック数/秒)
bi … ブロックデバイスから受け取ったブロック数
bo … ブロックデバイスに送られたブロック数
system … システム全体の割り込み数・コンテキストスイッチを表示
in … 1秒当たりの割り込み数
cs … 1秒当たりのコンテキストスイッチの回数
cpu … CPU 時間の使用状況を表示
us … ユーザ時間
sy … システム時間
id … アイドル時間。ここにはI/O待ちの時間は含まれない。
wa … I/O待ち時間
st … dカーネル2.6.11あたりから実装された