前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux必知必会-理解内存使用统计命令free

Linux必知必会-理解内存使用统计命令free

作者头像
用户2131907
发布2019-02-27 13:16:29
8570
发布2019-02-27 13:16:29
举报

本文详细介绍了Linux系统中的free命令的使用方法以及关键参数的含义,这可能是你见过的关于free命令最详细的一篇文章了,绝对值得你收藏。

free命令显示了Linux系统中物理内存、交换分区的使用统计信息。

指标说明

使用free命令查看内存信息,最重要的是理解当前系统的可用内存并不是直接看 free 字段就可以看出来的,应该参考的是

代码语言:javascript
复制
可用内存 = free + buffers + cached

除去标题行之后,第一行为 物理内存使用统计

标题

说明

total

物理内存总量 total = used + free

used

已使用内存总量,包含应用使用量+buffer+cached

free

空闲内存总量

shared

共享内存总量

buffers

块设备所占用的缓存

cached

普通文件数据所占用的缓存

available

当前可用内存总量(可用于分配给应用的,不包含虚拟内存)

对于available字段,在内核3.14中,它会从/proc/meminfo中的MemAvailable读取,在内核2.6.27+的系统上采用模拟的方式获取,其它情况下直接与free的值相同。

第二行-/+ buffers/cache 中只有两列usedfree有值,它们是物理内存的调整值

标题

说明

used

已使用内存(used)减去buffer和cached之后的内存,也就是应用正在使用的内存总量

free

空闲内存加上buffer和cached之后的内存,也就是真正的可用内存总量

第三行为交换分区使用统计

标题

说明

total

交换分区内存总量

used

正在使用的交换分区内存

free

空闲交换分区内存

在上面这些指标中,我们需要注意的是在下面这些情况下,系统是正常的,不需要担心

  • 空闲内存free接近于0
  • 已使用内存used接近于total
  • 可用内存(free+buffers/cache)占total的 20% 以上
  • 交换分区内存 swap 没有发生改变

下面情况说明内存过低,需要注意!

  • 可用内存(free+buffers/cache)过低,接近于0的时候
  • 交换分区内存占用swap used增加或者有波动
  • dmesg | grep oom-killer显示有OutOfMemory-killer正在运行

常用参数

选项

说明

-b/k/m/g

以bytes/kilobytes/megabytes/gigabytes为单位显示结果

-h

以人类可读的方式输出统计结果

-t

使用该选项会多显示一行标题为Total的统计信息

-o

禁止显示第二行的缓冲区调整值

-s

每隔多少秒自动刷新结果

-c

与-s配合使用,控制刷新结果次数

-l

显示高低内存的统计详情

-a

显示可用内存

-V

显示版本号

版本不同,可能部分选项也不相同。

参考示例

代码语言:javascript
复制
# free -t -a -

本文将会持续修正和更新,最新内容请参考我的 GITHUB 上的 程序猿成长计划 项目,欢迎 Star,更多精彩内容请 follow me

参考文献

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-06-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 指标说明
  • 常用参数
  • 参考示例
  • 参考文献
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档