系统版本
[root@product ~]# cat /etc/redhat-release
CentOS Linux release 7.0.1406 (Core)
1. 简介
free
命令用于显示系统中空闲内存和已使用内存的数量。语法格式:free [options]
2. 说明
free
命令用来显示系统中空闲的、已使用的物理内存和交换内存的总数,以及被使用的缓冲区和缓存内核。信息是通过解析/proc/meminfo
来收集的。
第一行Mem
,表示物理内存统计。
列名 | 描述 |
---|---|
total | 已安装的内存总数(total = used + free + buffers + cache)。 |
used | 已使用的内存(used = total - free - buffers - cache)。 |
free | 未使用的内存。 |
shared | 共享内存。大部分是被临时文件系统使用的内存,一般系统不会用到,总是0。 |
buffers | 内核缓冲区使用的内存。 |
cache | 页面缓存和块使用的内存。 |
buff/cache | 缓冲区和缓存的总和(buff/cache = buffers + cache)。 |
available | 估计在不交换的情况下启动新应用程序有多少可用内存。 |
第二行Swap
表示交换区的使用情况,也就是我们通常所说的虚拟内存。
列名 | 描述 |
---|---|
total | 总量。 |
used | 已使用的。 |
free | 空闲的。 |
3. 参数
简写 | 全称 | 描述 |
---|---|---|
-b | --bytes | 以字节为单位显示内存量。 |
-k | --kilo | 以千字节为单位显示内存量。这是默认值。 |
-m | --mega | 以兆字节为单位显示内存量。 |
-g | --giga | 以千兆字节为单位显示内存量。 |
--tera | 以TB字节为单位显示内存量。 | |
--peta | 以千TB字节为单位显示内存量。 | |
-h | --human | 以人类可读的方式自动匹配合适的单位来显示数据,并显示单位。 显示的单位为B = bytes;K = kilos;M = megas;G = gigas;T = teras;P = petas |
-w | --wide | 切换到宽模式。宽模式产生超过80个字符的行。在这种模式下,buffers 和 cache 是分两列显示的。 |
-s num | --seconds num | 每隔 num 秒重复打印一次,num 为具体的间隔秒数。 |
-c num | --count num | 重复打印 num 次后退出,num 为具体的次数。需要配合 -s 使用。 |
-l | --lohi | 显示详细的低内存和高内存统计信息,增加了 Low 和 High 这两行显示 |
--si | 使用1000的幂,而不是1024。 | |
-t | --total | 增加显示 Total 行,Total = Mem + Swap |
--help | 打印帮助。 | |
-V | --version | 显示版本信息。 |
4. 示例
一般可以这样使用,以人类可读的方式,显示最多的信息:
[root@product ~]# free -h -w -l -t
total used free shared buffers cache available
Mem: 1.8G 785M 121M 99M 134M 796M 786M
Low: 1.8G 1.7G 121M
High: 0B 0B 0B
Swap: 0B 0B 0B
Total: 1.8G 785M 121M
[root@product ~]#