free命令简介
本文主要介绍free命令的作用与日常使用案例,该命令是Linux日常维护中最常用的命令这一,用于查看系统内存使用情况。
举例1:最常用的方式
以m为单位显示目前内存使用情况:
[root@zcwyou ~]# free -m
total used free shared buff/cache available
Mem: 96469 50698 7353 4191 38418 39661
Swap: 4087 177 3910
可以看出这台服务器的内存大小为96G,已使用50G,空闲7G,共享4G,buff/cache共38G。有效内存为39G。
total:物理内存总数
used:已使用
free:空闲未分配
shared:共享内存,进程间共享的内容。
buff/cache:缓存
available:有效空间
我们先来理清楚一些概念。
buff/cache翻译起来都叫缓存。
buff指的是准备写入磁盘的数据,相当于块设备的缓存。
cache指的是从磁盘中读出的数据,保存在内容中以便随时可以读取。
buff/cache虽然占用了内存,但会随程序内存占用情况随时腾出空间。所以看内存占用情况绝不能看free。这是Linux内存优化的其中一种措施(放着也没用,还不如利用起来)。buff/cache本身的作用是利用内存快速存取磁盘数据。
free=total-used-buff/cache
对应以上数据,得出以下公式:
7353=96469-50698-38418
swap:Linux的交换分区,类似于Windows系统上的页面文件。但Linux上的swap空间支持单独分区与文件两种形式。它的作用是,当物理内存不够用时,从磁盘中划分一部分空间出来当内存使用。但存取速度与物理内存的速度可能相差几千倍。
举例2:定时更新
每隔3秒更新一次内存状态:
[root@zcwyou ~]# free -m -s 3
total used free shared buff/cache available
Mem: 96469 50695 7339 4199 38434 39656
Swap: 4087 176 3911
free命令是Linux运维人员最常用的命令之一,是系统监控必须使用的命令,简单高效快速对系统影响不大。
评论前必须登录!
注册