Your company here — click to reach over 10,000 unique daily visitors

free - Man Page

Display amount of free and used memory in the system

Examples (TL;DR)


free [options]


free displays the total amount of free and used physical and swap memory in the system, as well as the buffers and caches used by the kernel. The information is gathered by parsing /proc/meminfo. The displayed columns are:


Total usable memory (MemTotal and SwapTotal in /proc/meminfo). This includes the physical and swap memory minus a few reserved bits and kernel binary code.


Used or unavailable memory (calculated as total - available)


Unused memory (MemFree and SwapFree in /proc/meminfo)


Memory used (mostly) by tmpfs (Shmem in /proc/meminfo)


Memory used by kernel buffers (Buffers in /proc/meminfo)


Memory used by the page cache and slabs (Cached and SReclaimable in /proc/meminfo)


Sum of buffers and cache


Estimation of how much memory is available for starting new applications, without swapping. Unlike the data provided by the cache or free fields, this field takes into account page cache and also that not all reclaimable memory slabs will be reclaimed due to items being in use (MemAvailable in /proc/meminfo, available on kernels 3.14, emulated on kernels 2.6.27+, otherwise the same as free)


-b,  --bytes

Display the amount of memory in bytes.

-k,  --kibi

Display the amount of memory in kibibytes.  This is the default.

-m,  --mebi

Display the amount of memory in mebibytes.

-g,  --gibi

Display the amount of memory in gibibytes.


Display the amount of memory in tebibytes.


Display the amount of memory in pebibytes.


Display the amount of memory in kilobytes. Implies --si.


Display the amount of memory in megabytes. Implies --si.


Display the amount of memory in gigabytes. Implies --si.


Display the amount of memory in terabytes. Implies --si.


Display the amount of memory in petabytes. Implies --si.

-h,  --human

Show all output fields automatically scaled to shortest three digit unit and display the units of print out.  Following units are used.

  B = bytes
  Ki = kibibyte
  Mi = mebibyte
  Gi = gibibyte
  Ti = tebibyte
  Pi = pebibyte

If unit is missing, and you have exbibyte of RAM or swap, the number is in tebibytes and columns might not be aligned with header.

-w,  --wide

Switch to the wide mode. The wide mode produces lines longer than 80 characters. In this mode buffers and cache are reported in two separate columns.

-c,  --count count

Display the result count times.  Requires the -s option.

-l,  --lohi

Show detailed low and high memory statistics.

-L,  --line

Show output on a single line, often used with the -s option to show memory statistics repeatedly.

-s,  --seconds delay

Continuously display the result delay  seconds apart.  You may actually specify any floating point number for delay using either . or , for decimal point. usleep(3) is used for microsecond resolution delay times.


Use kilo, mega, giga etc (power of 1000) instead of kibi, mebi, gibi (power of 1024).

-t,  --total

Display a line showing the column totals.

-v,  --committed

Display a line showing the memory commit limit and amount of committed/uncommitted memory. The total column on this line will display the memory commit limit.   This line is relevant if memory overcommit is disabled.


Print help.

-V,  --version

Display version information.



memory information


The value for the shared column is not available from kernels before 2.6.32 and is displayed as zero.

Please send bug reports to


See Also

ps(1), slabtop(1), top(1), vmstat(8).

Referenced By

cinfo(1), freecolor(1), htop(1), pcp-free(1), pcp-htop(1), proc(5), procinfo(8), procinfo-ng(8), proc_meminfo(5), slabtop(1), smem(8), tmpfs(5), top(1), vmstat(8), w(1).

2023-05-02 procps-ng