查看Linux服务器下的内存使用情况,可以使用命令free -m

[root@localhost ~]$ free       // 以KB为单位显示内存使用情况
[root@localhost ~]$ free -m // 以MB为单位显示内存使用情况
[root@localhost ~]$ free -g // 以GB为单位显示内存使用情况
free -m
total used free shared buffers cached
Mem:
-/+ buffers/cache:
Swap: //Mem:物理内存使用情况 //swap:交换分区情况 //+buffers/cache:(可用)的内存数,即free+buffers+cached //-buffers/cache:(已用)的内存数,即used-buffers-cached //total:物理内存总大小 当前49GB //used:已经使用的物理内存大小 当前19GB //free:空闲的物理内存大小 当前46G //shared:多个进程共享的物理内存大小 //buffers Buffer:缓存内存数 当前798MB //cached Page:缓存内存数 当前16GB 可用内存的计算公式为: 可用内存=free+buffers+cached
即29541MB+798MB+15510MB=45849MB

其中,内存总数与已使用内存数和空闲内存数的关系是:

total(49GB)=used(19G)+free(30G)

在第二部分内容(-/+buffers/cache)中各参数如下所示。

(-buffers/cache):已用的used内存数,即2.361G(指的是第一部分Mem行中的used-buffers-cached)。 (18670-798-15510)

(+buffers/cache):可用的free内存数,即45850G(指的是第一部分Mem行中的free+buffers+cached)。

可见-buffers/cache反映的是被程序实实在在用掉的内存而+buffers/cache反映的是可以用的内存总数

centos7 free -h命令

[root@localhost ~]$ free -h    // 自动转换单位显示内存使用情况(centos7才有)

输出结果:

[root@MongoDB ~]# free -h
total used free shared buff/cache available
Mem: 652M 169M 222M 5.6M 261M 350M
Swap: .0G 0B .0G // Mem:物理内存的使用情况
// Swap:交换分区的使用情况 // total 总物理内存大小
// used 已经使用的物理内存大小
// free:空闲的物理内存大小 // shared:多个进程共享的物理内存大小
// buff/cache:用做缓冲/缓存的物理内存大小
// available:还可用的物理内存大小 // total 总内存 = used + free + buff/cache
// available 还能用的内存 = free + buff/cache
// 如果使用到交换分区,则表明物理内存不够或内存泄漏了 // 关于 buffer 和 cache:
// 我们的数据是存放在磁盘上的,数据是交给CPU进行处理的,但磁盘的运转速度很快,CPU的运转速度很慢,不可能直接把磁盘的数据直接丢给CPU进行处理,因此要经过
// 一个中间层,即内存,我们把这部分内存称为缓存(cache);相反地,CPU把数据处理完了,要存放到磁盘中,也要经过内存这个中间层,这部分内存则称为缓冲(buffer)
// 因此,数据的流向不一样,内存的角色也不一样。系统会优先预留一部分内存给 buff/cache 使用,剩下的内存再留给系统或程序使用

linux free 命令 查看内存使用情况的更多相关文章

  1. free命令查看内存使用情况(转载)

    linux free命令查看内存使用情况 时间:2016-01-05 06:47:22来源:网络 导读:linux free命令查看内存使用情况,free命令输出结果的各选项的含义,以及free结果中 ...

  2. linux top命令查看内存及多核CPU的使用讲述【转】

    转载一下top使用后详细的参数,之前做的笔记找不见了,转载一下,作为以后的使用参考: 原文地址:http://blog.csdn.net/linghao00/article/details/80592 ...

  3. Linux 使用 free 命令查看内存使用情况

    1.free 命令的选项 使用 free 命令查看服务器内存使用情况. free [-b|-k|-m|-g|-h] [-l] [-o] [-t] [-s delay] [-c count] [-V] ...

  4. linux top命令查看内存及多核CPU的使用讲述

    查看多核CPU命令 mpstat -P ALL  和  sar -P ALL 说明:sar -P ALL > aaa.txt   重定向输出内容到文件 aaa.txt top命令 经常用来监控l ...

  5. 【转载】linux top命令查看内存及多核CPU的使用讲述

    转载 https://www.cnblogs.com/dragonsuc/p/5512797.html 查看多核CPU命令 mpstat -P ALL  和  sar -P ALL 说明:sar -P ...

  6. linux 清理内存命令 查看内存命令

    查看内存: 我们可以用free命令查看内存信息: free -g total used free shared buffers cachedMem: 15   15    0     0       ...

  7. Linux下查看内存使用情况方法总结

    Linux查看CPU和内存使用情况:http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.html 在做Linux系统优化的时候,物理内 ...

  8. 【查看内存】Linux查看内存使用情况(二)

    Linux查看CPU和内存使用情况:http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.html 在做Linux系统优化的时候,物理内 ...

  9. Linux下jmap命令查看内存使用

    Linux下jmap命令查看内存使用 jmap -heap 1234(1234为进程号) jmap是JDK自带的一个工具,非常小巧方便,其支持参数如下: -heap       打印heap空间的概要 ...

随机推荐

  1. HttpServlet容器响应Web客户请求流程?

    1)Web客户向Servlet容器发出Http请求: 2)Servlet容器解析Web客户的Http请求: 3)Servlet容器创建一个HttpRequest对象,在这个对象中封装Http请求信息: ...

  2. 【leetcode】815. Bus Routes

    题目如下: We have a list of bus routes. Each routes[i] is a bus route that the i-th bus repeats forever. ...

  3. [Linux系统] (7)Keepalived高可用

    一.解决LVS server单点故障 如果集群中只有一台LVS server提供数据包分发服务,如果宕机,则会导致所有的业务重点,因为所有的请求都无法到达后面的Real server. 此时我们可以采 ...

  4. PHP 下载+安装

    1.官网下载 官网地址:http://PHP.net/ 地址:http://download.csdn.NET/detail/anndy_/9494632 官网手册:https://secure.ph ...

  5. TTTTTTTTTTTTTTTTTTTTT POJ 3690 0与* 二维哈希 模板 +multiset

    Constellations Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 5923   Accepted: 1164 De ...

  6. Postman(一)、断言

    postman常见断言方法介绍: 1.Clear a global variable (清除一个全局变量)  postman.clearGlobalVariable("variable_ke ...

  7. CF1213E Two Small Strings

    题目链接 问题分析 由于三个字母是等价的,所以大致可以分为如下几种情况: aa, ab ab, ac ab, ba ab, bc 不难发现,第\(3\)中情况可能造成无解(\(n>1\)时),而 ...

  8. [翻译]C#中异步方法的性能特点

    翻译自一篇博文,原文:The performance characteristics of async methods in C# 异步系列 剖析C#中的异步方法 扩展C#中的异步方法 C#中异步方法 ...

  9. git 指定自己的sshkey

    在服务器上生成ssh-key以后,需要把公钥放在github上,但是,这个公钥只能放在一个账户里,如果放在第二个账户里,就会提示这个key已经被用了,这是前提 一个可能的场景是这样的: 你们公司有好几 ...

  10. VSCode安装go语言开发环境,go插件问题解决

    在安装go插件时,会自动更新很多依赖库文件,都是从Github更新下来,但是因为Github的文件中,多有应用go官网中的文件,导致,因为网络缘故,不能直接下载,导致安装失败,如下:   Instal ...