freeコマンド

某所で実メモリを調べるfreeコマンドが話題に
上がったのですが、総量・使用量・空き容量以外の
読み取り方を分かっていなかったのでお教えしてきました。
最近メモリについて書いたりしているのでここにも
書き残しておきます。
(後程固定ページのコマンドのところに昇格させます。)

4GBx2=8GBのメモリを搭載している(今ポストしている)
マシーン上で単にfreeと打って実行するとKB単位で表示します。
$ free
     total   used   free   shared buffers cached
Mem:  8167204 4370556  3796648 33772 533500 2657944
-/+ buffers/cache:  1179112  6988092
Swap:  4999164    0  4999164

単位をMBで見るには

~$ free -m

-b(バイト)や-g(GB)・-t(TB)表示はやめときましょう。
なぜなら-bは数字が大きくなりすぎて分りづらく、ほかは
すごい大雑把になってしまいます。
やってみてください。(笑
-kオプションはつけないのと一緒で必要ないかと。。。

推奨
拙生はお気に入りは【-h】オプションでグッと見易くなります。

mainte@mini:~$ free -h
     total   used   free   shared buffers cached
Mem:   7.8G  4.5G   3.3G   32M  734M  2.7G
-/+ buffers/cache:  1.2G   6.8G
Swap:   4.8G  0B  4.8G

* CentOSなどにはこのオプションはありません。

便利オプション
topコマンドのように一定時間で情報を更新したい場合は
-sオプションに数字をつけて【free -s 5】のように実行すると
5秒ごとに情報が更新されます。
(ずっとやっているので終了時はCtrl+cで抜けます。)
表示回数を指定するなら【free -c 8】のように実行します。
表示間隔を指定しなければ1秒間隔で8回表示しますが、
-sオプションと組み合わせれば3秒毎に100回といった
指定ができます。

他にも単位の繰り上げを1000か1024にするかなどの
オプションがあります。

なにか忘れていたと思ったら【-t】コマンド。

Total: 13166368 4749452 8416916

のように最後に実メモリとSWAPのトータルを表示します。

で、話題になったものの説明を。
shared ← 共有メモリ
buffers ← ブロックデバイス用のキャッシュ
cached ← ページキャッシュ
-/+ buffers/cache ← キャッシュやバッファを除いた

要はused(使用量)が4GB以上になっているけど、こんなに
使っているの?って話です。
この数値はキャッシュやバッファを含めたもので、
実メモリが不足した際はキャッシュは捨て去られます。
実際の実メモリ空き容量は【-/+ buffers/cache】を
見なくてはいけません。

* SWAPの容量は5GB程度となっていますが、
  その程度の実メモリでインストールした際にubuntuが
  自動で割り振ったもので、後に8GBへ増設したために
  こんな数値になっています。(実際には十分すぎです)

ちなみに実メモリではなく仮想メモリw表示させるには
【vmstat】コマンドを使います。
$ vmstat 5 4 を実行すると5秒おきに4回表示します。

vmstatについてはページ回収やまだ実メモリに余裕が
あるのにSWAPを使うお話などとも合わせて次回ということで・・・

HOME

おすすめ