一、free作用
Linux free命令用于显示内存状态。
free指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。
二、free详解
默认情况下是以KB为单位显示
Men:表示物理内存统计
-/+ buffers/cache :表示物理内存的缓存统计
(-buffers/cache) 内存数: (指的第一部分Mem行中的used – buffers – cached)
(+buffers/cache) 内存数: (指的第一部分Mem行中的free + buffers + cached)
(-buffers/cache)表示真正使用的内存数, (+buffers/cache) 表示真正未使用的内存数
Swap :表示硬盘上的交换分区的使用情况
- total:表示总物理内存的大小
- used:表示已使用多少
- free:表示可用内存多少
- shared:表示多个进程共享的内存总额
- buffers/cached:表示磁盘缓存的大小
-b,-k,-m,-g以字节,KB,MB或GB显示输出
-h人类可读的输出(自动单位缩放)
-l显示详细的低内存和高内存统计信息
-o使用旧格式(无-/ + buffers / cache行)
-t显示RAM +交换总数
-s每[延迟]秒更新一次
-c更新[count]次
-a显示由内核导出的可用内存(每行> 80个字符)
-V显示版本信息并退出
free参数及用法
1.free -b 以字节为单位显示输出;
2.free -k 以Kb为单位显示输出;free默认是以Kb显示
3.free -m 以MB为单位显示输出;
4.free -g 以GB为单位显示输出;
5.free -h 是以人类可读的输出(自动单位缩放)
6.free -l 显示详细的低内存和高内存统计信息
7.-o使用旧格式(无-/ + buffers / cache行)
可组合使用
8. free -t 显示RAM +交换总数(显示linux的全部内存)
9.free -s n 每[延迟]秒更新一次即打印内存信息 Ctrl+C结束 后需跟参数
- free -V 显示版本信息并退出
三、内存使用量计算
这种算法其实就是直接用Mem中的used除以total得到的百分比:
(used / total)*100= 100%
[root@ localhost ~]# free -m
total used free shared buff/cache available
Mem: 976 102 749 6 124 727
Swap: 2047 0 2047
[root@ localhost ~]# free -m|grep Mem|awk '{print $3/$2*100"%"}'
10.4508%
[root@ localhost ~]#