每天一个LInux命令(39)free命令

free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。

      (1)用法:

      用法:  free  [选项参数]

      (2)功能:

      功能:  free 命令显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。共享内存将被忽略。

      (3)选项参数:

1) -b            以Byte为单位显示内存使用情况。

2) -k                以KB为单位显示内存使用情况。

3) -m           以MB为单位显示内存使用情况。

4) -g            以GB为单位显示内存使用情况。

5) -s            每3秒执行一次free操作

      (4)实例:

1)[[email protected] ~]$ free          显示内存使用情况

[[email protected] ~]$ free                                     //以kn为单位显示
              total        used        free      shared  buff/cache   available
Mem:        2013872      641564      864800       10132      507508     1164056
Swap:       2097148           0     2097148
[[email protected] ~]$ free -m                                 //以MB为单位显示
              total        used        free      shared  buff/cache   available
Mem:           1966         626         844           9         495        1136
Swap:          2047           0        2047
[[email protected] ~]$ free -g                    //以GB为单位进行显示
              total        used        free      shared  buff/cache   available
Mem:              1           0           0           0           0           1
Swap:             1           0           1
[[email protected] ~]$ 

第一部分Mem行解释:
        total:           内存总数;   

used:          已经使用的内存数;

free:           空闲的内存数;

Buffers/cached:        磁盘缓存的大小。

关系:  total = used + free +Buffers/cached

第二部分Swap指的是交换分区,也就是我们通常所说的虚拟内存。

2)[[email protected] ~]$ free -t           以总的形式显示内存的使用情况

[[email protected] ~]$ free -t
              total        used        free      shared  buff/cache   available
Mem:        2013872      640344      865772       10132      507756     1165108
Swap:       2097148           0     2097148
Total:      4111020      640344     2962920

3)[[email protected] ~]$ free -s 3         每三秒执行一次free操作

[[email protected] ~]$ free -s 3
              total        used        free      shared  buff/cache   available
Mem:        2013872      642136      863972       10132      507764     1163300
Swap:       2097148           0     2097148

              total        used        free      shared  buff/cache   available
Mem:        2013872      642148      863960       10132      507764     1163288
Swap:       2097148           0     2097148......

     (5)其他:

buffers和cached都是缓存,两者的区别:

为了提高磁盘存取效率, Linux做了一些精心的设计, 除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换), 还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache有效缩短了 I/O系统调用(比如read,write,getdents)的时间。

简单说来,page cache用来缓存文件数据,buffer cache用来缓存磁盘数据。在有文件系统的情况下,对文件操作,那么数据会缓存到page cache,如果直接采用dd等工具对磁盘进行读写,那么数据会缓存到buffer cache。

所以我们看linux,只要不用swap的交换空间,就不用担心自己的内存太少.如果常常swap用很多,可能你就要考虑加物理内存了.这也是linux看内存是否够用的标准。

时间: 2024-11-03 14:48:51

每天一个LInux命令(39)free命令的相关文章

每天一个linux命令(39)--ifconfig命令

许多人非常熟悉Windows下的ipconfig 命令行工具,它被用来获取网络接口配置信息并对此进行修改.Linux系统拥有一个类似的工具,也就是ifconfig(interfaces  config).通常需要以root 身份登录或使用sudo 以便在Linux 机器上使用 ifconfig 工具.依赖于ifconfig 命令中使用一些选项属性,ifconfig 工具不仅可以被用来简单的获取网络接口配置信息,还可以修改这些配置. 1.命令格式: ifconfig [网络设备] [参数] 2.命

linux每日命令(39):lsof命令

阅读目录(Content) 一.命令格式: 二.命令功能: 三.命令参数: 四. 使用实例 1. 无任何参数 文件描述符 常见的文件类型 2. 查看谁正在使用某个文件,也就是说查找某个文件相关的进程 4. 不使用+D选项,遍历查看某个目录的所有文件信息的方法 5. 列出root用户打开的文件信息 6. 列出某个程序进程所打开的文件信息 7. 列出多个进程多个打开的文件信息 8. 列出某个用户以及某个进程所打开的文件信息 9. 列出除了某个用户外的被打开的文件信息 10. 通过某个进程号显示该进程

【转】每天一个linux命令(39):grep 命令

原文网址:http://www.cnblogs.com/peida/archive/2012/12/17/2821195.html Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户. grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板.如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名.搜索的

每天一个linux命令(39):grep 命令

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户. grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板.如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名.搜索的结果被送到标准输出,不影响原文件内容. grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成

【转】每天一个linux命令(44):top命令

原文网址:http://www.cnblogs.com/peida/archive/2012/12/24/2831353.html top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法.top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列

每天一个linux命令12之top

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法.top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最"敏感"的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序:而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中

每天一个linux命令目录(转)

转载: http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每天一个linux命令.学习的主要参考资料为: 1.<鸟哥的linux私房菜> 2.http://codingstandards.iteye.com/blog/786653 3.linux命令五分钟系列 4.其他互联网资料,google,baidu等搜索引擎 一. 文件目录操作命令: 1.每天一个

【转】每天一个linux命令(42):kill命令

原文网址:http://www.cnblogs.com/peida/archive/2012/12/20/2825837.html Linux中的kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令.通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后台进程就须用kill命令来终止,我们就需要先使用ps/pidof/pstree/top等工具获取进程PID,然后使用kill命令来杀掉该进程.kill命令是通过向进程发送指定的信

每天一个linux命令(42):kill命令

Linux中的kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令.通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后台进程就须用kill命令来终止,我们就需要先使用ps/pidof/pstree/top等工具获取进程PID,然后使用kill命令来杀掉该进程.kill命令是通过向进程发送指定的信号来结束相应进程的.在默认情况下,采用编号为15的TERM信号.TERM信号将终止所有不能捕获该信号的进程.对于那些可以捕获该信号的

[转]每天一个linux命令目录

http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每天一个linux命令.学习的主要参考资料为: 1.<鸟哥的linux私房菜> 2.http://codingstandards.iteye.com/blog/786653 3.linux命令五分钟系列 4.其他互联网资料,google,baidu等搜索引擎 一. 文件目录操作命令: 1.每天一个linu