在实际的工作中,我们经常会用到free这个命令,但是我们对这个命令的实际含义又知道多少,它在CentOS 6 和CentOS 7 的显示又有什么差异?让我们一起瞧一瞧,看一看。
一 centos6 freefree 命令默认是使用 kb 作为单位的,free -m 则是以Mb作为单位的,free -g 是以gb作为单位的,gb-->mb-->kb 采用的是1024度量单位(而非1000)
常用参数和含义 -b 指定单位为bytes -m 指定单位为mb -k 指定单位为kb -g 指定单位为gb -o 显示老版本的输出格式也就是不显示-/+ buffers/cache 这行 -t 显示物理内存和虚拟内存的总和 -s n 每隔n秒显示一次 -c 显示多少次 -V 显示free的版本信息并退出 -l 显示最低和最高的内存数据统计 centos6 free 命令示例 [linuxidc@linuxidc ~]$ cat /etc/RedHat-release CentOS release 6.5 (Final) [linuxidc@linuxidc ~]$ free total used free shared buffers cached Mem: 8061376 7730380 330996 0 178608 4884772 -/+ buffers/cache: 2667000 5394376 Swap: 0 0 0 [linuxidc@linuxidc ~]$ free -m total used free shared buffers cached Mem: 7872 7519 352 0 174 4737 -/+ buffers/cache: 2607 5264 Swap: 0 0 0 [linuxidc@linuxidc ~]$ free -g total used free shared buffers cached Mem: 7 7 0 0 0 4 -/+ buffers/cache: 2 5 Swap: 0 0 0 free 值讲解我们这里以free 的值来进行讲解(显得精确些)
[linuxidc@linuxidc ~]$ free total used free shared buffers cached Mem: 8061376(total) 7730380(used1) 330996(free1) 0 178608(buffers1) 4884772(cached1) -/+ buffers/cache: 2667000(used2) 5394376(free2) Swap: 0 0 0Mem
total代表总的内存大小, used 代表程序已经使用的内存大小,free代表的是空闲的内存大小, shared 代表的是共享内存,buffers 代表的是 buffers cache, cached 代表的是 Page cache.
-/+ buffers/cache
used 代表的除去buffers和cached实际程序占用的内存, free代表的是 total - 第二行used, 也就是 第一行free + 第一行buffers + 第一行cached
Swap
这行代表的是交换分区(虚拟内存)。
计算公式 total=used1 + free1 ,总的内存大小= 使用的(used1)+ 空闲的(free1) used1 = used2(第二行的2667000) + buffers1(178608) + cached1(4884772) used2 = total - free2 free2 = free1 + buffers1(178608) + cached1(4884772) 二 centos7 freecentos7 的free 命令多了一个 -h 参数,它会自动根据内存的大小,自动转换成合适的单位,默认的计算倍数是 1024 。free 的显示信息来自于/proc/meminfo
常用的参数 -h 以人性化显示 --si 指定计算倍数为1000. -b 指定单位为bytes -m 指定单位为mb -k 指定单位为kb -g 指定单位为gb -t 显示物理内存和虚拟内存的总和 -s n 每隔n秒显示一次 -c 显示多少次 -V 显示free的版本信息并退出 -l 显示最低和最高的内存数据统计 -w 将buff和cacher 分开显示,默认是在一起显示的。 centos7 free 命令示例 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) [root@localhost ~]# free -h total used free shared buff/cache available Mem: 1.8G 197M 1.3G 9.4M 272M 1.4G Swap: 2.0G 0B 2.0G [root@localhost ~]# free -wh total used free shared buffers cache available Mem: 1.8G 197M 1.3G 9.4M 2.1M 270M 1.4G Swap: 2.0G 0B 2.0G以 free -h 的值为例,