文章目录
- 放空一下自我 free
- 默认的效果
- 使用易读的参数
- 间隔显示内存状态
- 查看meminfo文件
- 更多信息
放空一下自我 free
**free
**这个命令在Linux系统监控的工具里面,算是使用的比较多的一个。
使用_man
_查看可知,官方含义为:
Display amount of free and used memory in the system
也就是显示可用、易用的系统内存,它直接读取/proc/meminfo
文件。
默认的效果
先看下不加任何参数的时候,free
的效果:
$ freetotal used free shared buff/cache available
Mem: 32664832 15667736 674136 464892 16322960 15803156
Swap: 16449532 3039756 13409776
看起来很多的样子,但是不直观,我比较喜欢加上-h参数。
使用易读的参数
-h参数,跟前面的df
等命令类似,此处的h表示_human being_的含义方便人类阅读。 除了这个还有_-b,-k,-m,-g_,含义分别为按照_字节、KB、MB、GB_的格式来显示。
$ free -htotal used free shared buff/cache available
Mem: 31G 14G 655M 453M 15G 15G
Swap: 15G 2.9G 12G
Wow,此时的显示简直好简洁。
说下其中的含义:
-
total : 表示总的物理内存大小,比如上面的就表示31GB的内存
-
used :表示已经使用的内存大小,比如上面的就是使用了14GB
-
free :表示可用多少
-
shared:表示多个进程共享的内存大小
-
buff/cache:表示磁盘缓存的大小,这里有两个方面,
buff
和cache
,两个的含义不同- buff :something that has yet to be ‘writeen’ to disk ,还没有写入磁盘
- cache: something that had been ‘read’ from the disk and store for later user,从磁盘读取的方便下一次使用
- 这里就设计到Linux的设计哲学,比如读取一个100G的文件,第一次所使用的时间总归是后面再次读取的时间的好几倍,当然前提是没有释放掉caches
-
available:当然含义为可用的内存容量大小
间隔显示内存状态
还有一个比较常用的就是,如果你希望过一段时间就看下free
的情况,OK,使用参数-s
,后面跟的单位是秒,也就是每个几秒,统计一下使用的内存情况,比如我们每个2s,显示一下
$ free -s 2total used free shared buff/cache available
Mem: 32664832 15668528 670964 464892 16325340 15802360
Swap: 16449532 3039756 13409776total used free shared buff/cache available
Mem: 32664832 15669760 669724 464892 16325348 15801124
Swap: 16449532 3039756 13409776total used free shared buff/cache available
Mem: 32664832 15670220 669248 464892 16325364 15800652
Swap: 16449532 3039756 13409776total used free shared buff/cache available
Mem: 32664832 15669264 670204 464892 16325364 15801624
Swap: 16449532 3039756 13409776
查看meminfo文件
$ cat /proc/meminfo
其实free
读取的就是这个文件的某些信息,可以通过同步监控这个文件来check free
的状态。
更多信息
Hi,XDJM们,更多信息欢迎移步我的主页、CSDN或微信公众号letsProgramming.
- 🐱 github
- 🏠 Homepage https://shaoguangleo.github.io
- CSDN CSDN http://blog.csdn.net/shaoguangleo
- 微信公众号:letsProgramming