free命令常用参数详解

                                       作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

  在运维期间我们会经常去查看服务器硬件信息,比如说内存,大家可能知道看内存用“[root@yinzhengjie ~]# cat /proc/meminfo”,看cpu信息就用"[root@yinzhengjie ~]# cat /proc/cpuinfo",甚至用top命令也能看到相关的信息,不过在linux系统中有专门查看内存的命令哟,他是我们今天的主角。让我们一起来学习一下吧。

一.语法格式: free [-b | -k | -m] [-o] [-s delay ] [-t] [-l] [-V]

1."-b"参数:以字节为单位显示内存使用情况。

1 [root@yinzhengjie ~]# free -b
2              total       used       free     shared    buffers     cached
3 Mem:    8237436928 8098242560  139194368          0  159383552 6659211264
4 -/+ buffers/cache: 1279647744 6957789184
5 Swap:   8371822592   61120512 8310702080
6 [root@yinzhengjie ~]#

free -b

2."-k"参数:以“kb”为单位显示内存使用情况。(默认不加参数的话,直接在命令行中敲击“free”,就会默认打印-k的参数。)

1 [root@yinzhengjie ~]# free -k
2              total       used       free     shared    buffers     cached
3 Mem:       8044372    7907804     136568          0     155648    6503448
4 -/+ buffers/cache:    1248708    6795664
5 Swap:      8175608      59688    8115920
6 [root@yinzhengjie ~]#

free -k

3.“-m”参数:以“mb”为单位显示内存使用情况。

1 [root@yinzhengjie ~]# free -m
2              total       used       free     shared    buffers     cached
3 Mem:          7855       7722        132          0        152       6351
4 -/+ buffers/cache:       1219       6636
5 Swap:         7983         58       7925
6 [root@yinzhengjie ~]# 

free -m

4.“-s”参数:后面需要跟个数字,单位是"s",显示每隔多少秒数来显示一次内存使用情况。

 1 [root@yinzhengjie ~]# free -m -s 1
 2              total       used       free     shared    buffers     cached
 3 Mem:          7855       7723        132          0        152       6351
 4 -/+ buffers/cache:       1219       6636
 5 Swap:         7983         58       7925
 6
 7              total       used       free     shared    buffers     cached
 8 Mem:          7855       7723        132          0        152       6351
 9 -/+ buffers/cache:       1219       6636
10 Swap:         7983         58       7925
11
12              total       used       free     shared    buffers     cached
13 Mem:          7855       7723        132          0        152       6351
14 -/+ buffers/cache:       1219       6636
15 Swap:         7983         58       7925
16
17              total       used       free     shared    buffers     cached
18 Mem:          7855       7723        132          0        152       6351
19 -/+ buffers/cache:       1219       6636
20 Swap:         7983         58       7925
21
22              total       used       free     shared    buffers     cached
23 Mem:          7855       7722        132          0        152       6351
24 -/+ buffers/cache:       1219       6636
25 Swap:         7983         58       7925
26
27              total       used       free     shared    buffers     cached
28 Mem:          7855       7722        132          0        152       6351
29 -/+ buffers/cache:       1219       6636
30 Swap:         7983         58       7925
31
32              total       used       free     shared    buffers     cached
33 Mem:          7855       7722        132          0        152       6351
34 -/+ buffers/cache:       1219       6636
35 Swap:         7983         58       7925
36
37              total       used       free     shared    buffers     cached
38 Mem:          7855       7723        132          0        152       6351
39 -/+ buffers/cache:       1219       6636
40 Swap:         7983         58       7925
41
42              total       used       free     shared    buffers     cached
43 Mem:          7855       7723        132          0        152       6351
44 -/+ buffers/cache:       1219       6636
45 Swap:         7983         58       7925
46
47              total       used       free     shared    buffers     cached
48 Mem:          7855       7723        132          0        152       6351
49 -/+ buffers/cache:       1219       6635
50 Swap:         7983         58       7925
51
52              total       used       free     shared    buffers     cached
53 Mem:          7855       7723        132          0        152       6351
54 -/+ buffers/cache:       1219       6635
55 Swap:         7983         58       7925
56
57              total       used       free     shared    buffers     cached
58 Mem:          7855       7723        132          0        152       6351
59 -/+ buffers/cache:       1219       6636
60 Swap:         7983         58       7925
61
62 ^C
63 [root@yinzhengjie ~]# 

free -m -s 1

5.“-t”参数:在末尾活多出一行“Total”,表示显示总和列

 1 [root@yinzhengjie ~]# free -t -m -s 1
 2              total       used       free     shared    buffers     cached
 3 Mem:          7855       7724        131          0        152       6352
 4 -/+ buffers/cache:       1220       6635
 5 Swap:         7983         58       7925
 6 Total:       15839       7782       8057
 7
 8              total       used       free     shared    buffers     cached
 9 Mem:          7855       7724        131          0        152       6352
10 -/+ buffers/cache:       1220       6635
11 Swap:         7983         58       7925
12 Total:       15839       7782       8057
13
14              total       used       free     shared    buffers     cached
15 Mem:          7855       7724        131          0        152       6352
16 -/+ buffers/cache:       1220       6635
17 Swap:         7983         58       7925
18 Total:       15839       7782       8057
19
20              total       used       free     shared    buffers     cached
21 Mem:          7855       7724        131          0        152       6352
22 -/+ buffers/cache:       1220       6635
23 Swap:         7983         58       7925
24 Total:       15839       7782       8057
25
26 ^C
27 [root@yinzhengjie ~]# 

free -t -m -s 1

6.“-o”参数:不显示包含“-/+ buffers/cache”的这一列,即不显示缓冲区调节列。

 1 [root@yinzhengjie ~]# free -t  -o -m -s 1
 2              total       used       free     shared    buffers     cached
 3 Mem:          7855       7724        131          0        152       6352
 4 Swap:         7983         58       7925
 5 Total:       15839       7782       8057
 6
 7              total       used       free     shared    buffers     cached
 8 Mem:          7855       7724        131          0        152       6352
 9 Swap:         7983         58       7925
10 Total:       15839       7782       8056
11
12              total       used       free     shared    buffers     cached
13 Mem:          7855       7724        131          0        152       6352
14 Swap:         7983         58       7925
15 Total:       15839       7782       8056
16
17              total       used       free     shared    buffers     cached
18 Mem:          7855       7724        131          0        152       6352
19 Swap:         7983         58       7925
20 Total:       15839       7782       8056
21
22              total       used       free     shared    buffers     cached
23 Mem:          7855       7724        131          0        152       6352
24 Swap:         7983         58       7925
25 Total:       15839       7782       8057
26
27 ^C
28 [root@yinzhengjie ~]# 

free -t -o -m -s 1

二.如何去看输出的结果

我上面举了那么多例子,我生活中最常用的就是:“free -m”,那么我们如何看这个输出的结果呢?

      1               2          3           4        5         6           7              8
2                   total       used       free     shared    buffers     cached         #第一行
3    Mem:            7855       7718        137          0        152       6348         #第二行
4    -/+ buffers/cache:         1218       6637                                          #第三行
5    Swap:           7983         58       7925                                          #第四行我们知道这个是"free -m"的输出结果,我只不过是将结果取出来了,然后进行标号,用坐标的方式来讲解如何查看内容:
第一行:
total(2,3):总计物理内存的大小。
used(2,4):已使用的空间。
free(2,5):可用的空间。
shared(2,6):多个进程共享的内存总额。现在已经deprecated,其值总是0(当然在一些系统上也可能不是0,主要取决于free命令是怎么实现的)。
buffers(2,7):用于存放要输出到disk(块设备)的数据的,[A buffer is something that has yet to be "written" to disk. ]即提高了内存网硬盘加速写的能力
cached(2,8):存放从disk上读出的数据,['A cache is something that has been "read" from the disk and stored for later use.'] (cached往往比buffers数字大就是为了提高IO read的性能)即提高了加速读的能力
第二行:(输出时从操作系统(OS)来看的)
看了第一行的解释,我能知道了第一行输出时从操作系统(OS)来看的。也就是说,从OS的角度来看
(3.3):即7855MB物理内存;
(3,4):7718MB已经被使用了;
(3,5):137MB可用被使用。
因此,我们可以得到一个公式哟:(3.3)= (3,4)+ (3,5)
第三行:(是从一个应用程序的角度看系统内存的使用情况)
(4,4,):即-buffers/cache,表示一个应用程序认为系统被用掉多少内存;
(4,5):即+buffers/cache,表示一个应用程序认为系统还有多少内存;
因此我们又可以得到2个公式哟:1>.(4,4) = (3,4)  - (3,7) - (3,8)2>.(4,5) = (3,5)  + (3,7) - (3,8)
第四行:
free的输出一共有四行,第四行为交换区的信息,分别是交换的总量(total),使用量(used)和有多少空闲的交换区(free)
'''
提示:free命令由procps.*.rpm提供(在Redhat系列的OS上)。free命令的所有输出值都是从/proc/meminfo中读出的。“-/+ buffers/cache”其对应的used表示实际使用内存,对应的free对应的才是实际空闲的内存。
'''

free命令常用参数详解相关推荐

  1. linux下的arp刷新命令详解,linux arp 命令常用参数详解

    linux arp 命令常用参数详解 linux arp 命令常用参数详解 显示和修改地址解析协议(ARP)使用的"IP 到物理"地址转换表. ARP -s inet_addr e ...

  2. ls命令及常用参数详解

    ls命令及常用参数详解 ls命令及常用参数详解 ls命令详解 Linux中执行ls -l后,显示的各列代表什么意思? ls命令及常用参数详解 ♢\color{red}{\diamondsuit}♢ l ...

  3. nmap常用参数详解

    nmap常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 借用英雄联盟的一个英雄赵信的一句话:"即使敌众我寡,末将亦能万军丛中取敌将首级!".三国关羽 ...

  4. linux 文件 字符集设置,Linux字符集和系统语言设置-LANG,locale,LC_ALL,POSIX等命令及参数详解...

    博文说明[前言]: 本文将通过个人口吻介绍Linux字符集和系统语言设置,包括LANG,locale,LC_ALL,POSIX等命令及参数详解的相关知识,在目前时间点[2017年6月21号]下,所掌握 ...

  5. linux noprobe参数,find 命令的参数详解

    原标题:find 命令的参数详解 使用name选项 文件名选项是find命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用. 可以使用某种文件名模式来匹配文件,记住要用引号将文件名模式引起来 ...

  6. 【学习笔记】sed 命令及参数详解

    sed 命令及参数详解 标签:Sed 文章目录 sed 命令及参数详解 一.简介 二.基本用法 2.1. 三种方式 2.2. 常用选项 2.3. 命令体的组成 2.3.1. 定位文本部分 2.3.2. ...

  7. Latex技巧:LaTex插图命令includegraphics参数详解

    转自:https://www.cnblogs.com/yifdu25/p/8326025.html Latex技巧:LaTex插图命令includegraphics参数详解 Latex插图的命令是\i ...

  8. Python 命令行参数详解

    Python 命令行参数详解 0. 命令行参数 1. sys.argv 2. getopt 2.1 getopt.getopt 方法 2.2 Exception getopt.GetoptError ...

  9. WPF-Visifire.Chart使用:常用参数详解

    WPF-Visifire.Chart使用:常用参数详解 添加引用 1.百度下载WPFVisifire.Charts.dll程序集. 2.将程序集添加至你的项目引用. 代码部分 前台代码 <Gri ...

最新文章

  1. activeMQ Jms Demo
  2. 周末话题-元编程(metaprogramming)
  3. initramfs两种方法恢复_苹果手机备忘录删除了怎么恢复?两种方法,解决90%恢复问题...
  4. python 修改图片尺寸_python 批量修改图片大小
  5. mysql 减去_MySql进阶面试题
  6. form里面的action和method(post和get的方法)使用
  7. 记录一次失败的Git操作
  8. php字符串指定长度截取,php 截取指定长度字符串的代码分享
  9. 如何批量生成视频二维码
  10. CPU设计实战(一)
  11. Premiere cs6导出MP4格式视频
  12. 使用 Python 和 Pygame 构建小行星游戏
  13. 【翻译】Chromium 网络栈 disk cache 设计原理
  14. Apache JMeter安装
  15. DJI M210+manifold 2C配置
  16. 骚操作之rsync下行同步+lnotify实时同步详解
  17. 解读Conflux的共识机制
  18. framebuffer之overview/双缓冲/alpha与colorkey/窗口平移与virtual screen平移
  19. 采购计算机硬件的理论,计算机硬件采购合同要点分析.doc
  20. 判断当前是移动端还是PC端 判断是微信浏览器还是非微信浏览器

热门文章

  1. PPT去掉图片白色背景
  2. CSS侧边收缩导航栏
  3. 以太坊源码分析(38)event源码分析
  4. 广域网技术之HDLC和ppp原理与配置
  5. xampp和wamp的mysql_XAMPP或WAMP Server与IIS有什么区别?
  6. 使用draw.io绘制简洁大方的流程图
  7. 一个很皮的实践 Python自动生成表情包
  8. windows服务的安全风险
  9. 干货 | 如何为Mist建立无服务器应用
  10. python 在日常工作中_每天在工作和生活中做的事,我如何用 Python 让它们变得更轻松?...