- -b,-k,-m,-g show output in bytes, KB, MB, or GB
- k,m,g显示输出字节,KB,MB,或GB
- -h human readable output (automatic unit scaling)
- 可读输出(自动单元缩放)
- -l show detailed low and high memory statistics
- 显示详细的低内存和高内存统计
- -o use old format (no -/+buffers/cache line)
- 使用旧格式(无缓冲区/高速缓存行
- -t display total for RAM + swap
- 显示总的RAM +交换
- -s update every [delay] seconds
- 更新每[延迟]秒
- -c update [count] times
- 更新[计数]次数
- -a show available memory if exported by kernel (>80 characters per line)
- 可用内核导出的可用内存(每行80个字符)
- -V display version information and exit
- 显示版本信息并退出
time free -s 1 -c 2 #表示持续每隔1s更新更新一次mem信息,更新2次
[root@qqjf1 ~]# time free -s 1 -c 2
total used free shared buffers cached
Mem: 16332256 6323968 10008288 0 14392 125776
-/+ buffers/cache: 6183800 10148456
Swap: 0 0 0
total used free shared buffers cached
Mem: 16332256 6324100 10008156 0 14400 125776
-/+ buffers/cache: 6183924 10148332
Swap: 0 0 0
real 0m1.001s
user 0m0.000s
sys 0m0.001s
- total: 内存总数
- used: 已经使用内存数
- free: 完全空闲内存
- shared: 多个进程共享的内存
- buffers: 用于块设备数据缓冲,记录文件系统metadata(目录,权限,属性等)
- cached: 用于文件内容的缓冲
- Mem: 物理内存
- -/+ buffers/cache: 基于应用角度考虑(计算已使用内存时减去buffers/cache,计算可使用内存时加上buffers/cache)的内存情况,也可理解为真实的内存使用情况.
- Swap: 交换分区
===============================================================================================
-buffers/cache——应用程序使用的内存大小,used减去缓存值
+buffers/cache——所有可供应用程序使用的内存大小,free加上缓存值
-buffers/cache=used-buffers-cached
+buffers/cache=free+buffers+cached
=================================================================================================
total used free shared buffers cached
Mem: 15949 6176 9772 0 14 123
-/+ buffers/cache: 6039 9910
Swap: 0 0 0
这里系统 :可用为 9910M ,已经使用6039M : 注:9910为可用缓存区,系统可以随时调用的内存;
==================================================================================================
swap :上边表示未使用
一般情况下不建议这么做, 如果你确定向的话还是可以的
首先运行sync把未存盘的cache都写入磁盘,稍等片刻, 或者是直接运行sync 两遍
然后echo 1 试试应该大部分缓存可以释放
释放cache memory内存:
To free pagecache:
echo 1 > /proc/sys/vm/drop_caches
To free dentries and inodes:
echo 2 > /proc/sys/vm/drop_caches
To free pagecache, dentries and inodes:
echo 3 > /proc/sys/vm/drop_caches
这个文件中记录了缓存释放的参数,默认值为0,也就是不释放缓存。
他的值可以为0~3之间的任意数字,代表着不同的含义:
0 – 不释放
1 – 释放页缓存
2 – 释放dentries和inodes
3 – 释放所有缓存