通过对free命令的深入学习,我觉得有必要整理一个文档,供自己和小伙伴们今后的复习使用。
free 命令的详细剖析
参数有:-b/k/m/g 分别以bytes/kilobytes/megabytes/gigaby为单位显示
-h 以人类可读的方式输出统计结果
-t 使用该选项会多显示一行标题为Total的统计信息,该行统计的是(used、free、total的总和)此Total与total不同,
请注意
-o(小写) 禁止显示第二行的缓冲区调整值(-/+ buffers/cache)
-s 每个多少秒自动刷新结果
-c 与-s配合使用,控制刷新结果次数
-l 显示高低内存的统计详情
-a 显示可用内存
-V 显示版本号
centOS 7
centOS 6
free命令显示了Linux系统中物理内存、交换内存的使用统计信息,可用内存=free + buffers + cached
*显示中第一行Mem各标题的说明:
total: 物理内存总量total=used + free
used: 已使用的内存总量,包含应用使用量 + buffer + cached
free: 空闲内存总量
shared 共享内存总量
buffers: 块设备所占用的缓存
cached: 普通文件数据所占用的缓存
available:(本博客中在centOS 7中有显示)当前可用的内存总量(可用于分配给应用的,不包含虚拟内存)
(对于available字段,在内核3.14中,它会从/proc/meminfo中的MEMAvailable读取,在内核2.6.27+的系统上采用模 拟的方式获取,其他情况下直接与free的值相同。)
*显示中第二行-/+ buffers/cache各标题的说明:
used:已使用内存(used)减去buffer和cached之后的内存,也就是应用正在使用的内存总量(应用使用内存的大小)
free: 空闲内存加上buffer和cached之后的内存,也就是真正的可用内存总量(除了应用使用的内存,剩下的内存)
* 显示中第三行swap各标题的说明:
total: 交换分区内存总量
used: 正在使用的交换分区内存
free: 空闲交换分区内存
?虽然知道了关于free的各项参数及各选项的意义,但是,什么情况下才能知道内存不够用了呢?
所有上面的这些指标中,当出现以下情况,系统是正常的,不需要担心:
* 空闲内存free接近0
* 已使用内存used接近于total
* 可用内存(free+buffers/cache)占total的20%以上
* 交换分区内存swap没有发生改变
下面情况说明内存过低,需要注意!
* 可用内存(free+buffers/cache)过低,接近于0的时候
* 交换分区内存占用swap used增加或者有波动
* dmesg | grep oom-killer显示有OutofMemory-killer正在运行
原创文章,作者:jk,如若转载,请注明出处:http://www.178linux.com/81584
评论列表(1条)
和上篇博文都是有意思的总结,赞~~能注意下排版会更完美~继续加油~