端くれプログラマの備忘録 Unix [Unix] free – メモリの利用状況を表示する

[Unix] free – メモリの利用状況を表示する

まずは –help で指定可能なオプションを確認。

$ free --help
Usage:
free [options]
Options:
-b, --bytes         show output in bytes
-k, --kilo          show output in kilobytes
-m, --mega          show output in megabytes
-g, --giga          show output in gigabytes
     --tera          show output in terabytes
     --peta          show output in petabytes
-h, --human         show human-readable output
     --si            use powers of 1000 not 1024
-l, --lohi          show detailed low and high memory statistics
-t, --total         show total for RAM + swap
-s N, --seconds N   repeat printing every N seconds
-c N, --count N     repeat printing N times, then exit
-w, --wide          wide output
     --help     display this help and exit
-V, --version  output version information and exit
For more details see free(1).

オプションを何も指定しなければKB単位で表示されるみたい。

$ free
              total        used        free      shared  buff/cache   available
Mem:        1015004      350080      164084       52204      500840      425788
Swap:       4194300        5640     4188660

-h オプションで人間が読みやすい単位にしてくれる。

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           991M        342M        159M         50M        489M        415M
Swap:          4.0G        5.5M        4.0G

繰り返し表示したければ -s で間隔(秒)と -c で回数を指定する。

$ free -s 1 -c 5 -h
              total        used        free      shared  buff/cache   available
Mem:           991M        342M        159M         50M        489M        415M
Swap:          4.0G        5.5M        4.0G
              total        used        free      shared  buff/cache   available
Mem:           991M        342M        159M         50M        489M        415M
Swap:          4.0G        5.5M        4.0G
              total        used        free      shared  buff/cache   available
Mem:           991M        342M        159M         50M        489M        415M
Swap:          4.0G        5.5M        4.0G
              total        used        free      shared  buff/cache   available
Mem:           991M        342M        159M         50M        489M        415M
Swap:          4.0G        5.5M        4.0G
              total        used        free      shared  buff/cache   available
Mem:           991M        342M        159M         50M        489M        415M
Swap:          4.0G        5.5M        4.0G

カラムの意味

参考サイトより:

Mem – ページキャッシュとバッファキャッシュを考慮しないメモリサイズ

  • total – OSが認識している物理的なメモリサイズ。RAIDカードやNICなどを装着しているときは、それらのためにメモリが使われるので実際の搭載メモリサイズよりも少なくなります。
  • used – 使用しているメモリサイズ。これにはバッファキャッシュやページキャッシュなどOSがディスクキャッシュのために使用しているメモリも含まれます。
  • free – 空きメモリサイズ。この値にはバッファキャッシュとページキャッシュが含まれていません。一般にLinuxは使い続けるほど、メモリをキャッシュに割り当てます。そのため使い続けるほどfreeの値はゼロに近づきます。この値が少ないからといって空きメモリがないわけではないことに注意してください。
  • shared – 共有メモリに割り当てられたメモリ。
  • buffers – バッファキャッシュに割り当てたメモリ。バッファキャッシュはブロックデバイス用のキャッシュです。
  • cached – ページキャッシュに割り当てたメモリ。ページキャッシュはファイルに対するキャッシュです。

-/+buffers/cache – ページキャッシュとバッファキャッシュを考慮したメモリサイズ

  • used – 1行目のusedからページキャッシュとバッファキャッシュを引いた値。OSとアプリケーションが純粋に使用しているメモリサイズを表します。
  • free – 1行目のfreeにページキャッシュとバッファキャッシュを足した値。キャッシュに割り当てられているメモリを自由に割り当て可能なメモリと考えれば、この値が空きメモリサイズになります。

Swap – スワップに割り当てたサイズ。

  • total – スワップに割り当てたディスクサイズ。
  • used – 割り当てた中で使用中のサイズ。
  • free – 割り当てた中で使用していないサイズ。

参考サイト

【 free 】コマンド――メモリの利用状況を表示する:Linux基本コマンドTips(125) – @IT
https://www.atmarkit.co.jp/ait/articles/1707/07/news014.html

freeコマンドで確認するOSのメモリ情報 – SHOYAN BLOG
http://48n.jp/blog/2016/05/08/learn-the-memory-with-free-command/

4.メモリ使用率(第5章 パフォーマンス管理~上級:基本管理コースII)
https://users.miraclelinux.com/technet/document/linux/training/2_5_4.html