free命令和上一篇的top命令一样,都是系统监控的常用命令,free命令主要是用来显示系统内存的使用情况,该命令的显示内容 虽然不多,但是不太好理解,这里做一个记录。

这是常见 的free命令的截图:

free

内容解析

首先看前两行:

        total used free shared buffers cached
Mem: 8057772 7918268 139504 448 156188 973456

第一行是列名,

这里主要来看第二行,第二行表示的是针对于os(操作系统来说的 内存使用情况),其中总量是8057772k,已经使用了7918268k(注意,这里指的是被操作系统认为已经使用的),空闲139504k,共享448k,buffers  156188k,cached 973456k,由于 buffers和cached是linux系统用来做缓存的,对于操作系统来说这部分 内存是已经被使用的 ,但是对于应用程序来说这部分内存是可以被再次使用的。

这里有一个等式:

8057772 = 7918268 + 139504,即操作系统总内存等于,操作系统已经使用的内存加上空闲内存

第三行:

-/+ buffers/cache:    6788624    1269148

注意这里表示的是,从应用程序的角度上讲,有6788624k已经被使用了,还剩余1269148还可以使用。

注意 这里有一个很重要的等式来表明这种关系:

6788624  = 7918268 - 156188 - 973456 ,即从应用程序的角度看,系统实际使用内存等于 被操作系统认为已经用的内存减去 buffers和cached,因为这两项从应用程序来看是可以被使用的。

1269148 = 139504 + 156188 + 973456 ,即从应用程序的角度来看,系统实际可用内存还需要加上buffers和cached。所以从应用程序的角度讲,需要看这个内存值

常见参数

free -m: 以M为单位显示,因为默认是以k为单位

free -g: 以G为单位显示

linux 配置http代理以及epel源安装

在线上部署环境,安装软件时,经常碰到的一种情况就是使用yum来安装软件,但是有时无法访问外网,这时就需要正向代理的支持了。说到代理服务器,有正向代理,...

阅读全文

记录一次线上mysql主从数据库的迁移(数据量为亿级别)

前一阵迁移了线上服务器上的mysql的数据,数据量达到了亿级别。特在此记录一下操作流程。 现状: 目前线上使用了mysql主从库,即主库A和从库B,由于当初在安...

阅读全文

centos6下 mysql 5.5 数据目录迁移

前一篇文章 http://www.xiaomager.com/651.html 介绍了centos6下 mysql 5.5的安装过程。 当启动后,可以使用命令 ps -ef|grep mysql 看来mysql的进程情况,如...

阅读全文

欢迎留言