CentOS 6.7与CentOS 7.3内存查看命令free、top的差异对比

本文是作者学习及应用笔记,以CentOS 6.7和CentOS 7.X为例,介绍Linux中查看内存占用情况的free、top命令的常见用法及对比。

  • CENTOS 6.7 free -mlt(看buffers/cache free可知真正可用的空闲内存)
  • CENTOS 7.3 free -mlht(看available可知真正可用的空闲内存)
  • CENTOS 6.7 top -bn1 -a(按当前各个进程占用内存倒序)
  • CENTOS 7.3 top -bn1 -o “%MEM” (按当前各个进程占用内存倒序)
  • CENTOS 7.3 top -bn1 -o “%CPU” (按当前各个进程占用CPU倒序)

以CENTOS 6.7为例,解释命令及查看要点,并对照给出CENTOS7.3的差异

[ ~]# cat /etc/redhat-release 
CentOS release 6.7 (Final)
[ ~]# 
[ ~]# uname -a                
Linux  2.6.32-573.8.1.el6.x86_64 #1 SMP Tue Nov 10 18:01:38 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[ ~]# 

free

[ ~]# free -mlt 
             total       used       free     shared    buffers     cached
Mem:           994        866        128          0        207        387
Low:           994        866        128
High:            0          0          0
-/+ buffers/cache:        271        723
Swap:            0          0          0
Total:         994        866        128
[ ~]# 
  • 上例为CENTOS 6.7,重点关注buffers/cache中的free = 723那项,表示可用的空余内存为723MB,其余的项都可以不管。

  • CENTOS7.3的free命令已有变化,请参见本文末尾附录CENTOS 7.3,free直接给出了空余内存available = 61,即61GB空余。同时,新版本的free增加了-h选项,支持以人性化的单位(K/M/G)显示各个数值。

top

[ ~]# top -bn1 -a | head -n 10       
top - 22:37:24 up 154 days,  4:57,  1 user,  load average: 0.02, 0.03, 0.00
Tasks:  93 total,   1 running,  92 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.1%us,  0.1%sy,  0.0%ni, 99.5%id,  0.2%wa,  0.0%hi,  0.0%si,  0.1%st
Mem:   1018508k total,   887376k used,   131132k free,   212380k buffers
Swap:        0k total,        0k used,        0k free,   396972k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                
25136 mongodb   20   0  645m  53m 7388 S  0.0  5.4 205:33.86 mongod                                                                 
18729 root      20   0  103m  34m  828 S  0.0  3.4  24:46.64 redis-server                                                           
22333 mysql     20   0  695m  29m 3296 S  0.0  3.0  17:54.86 mysqld   
  • 在CENTOS 6.7中,top支持-a选项,不支持-o选项。-a选项可以按各进程内存占用从大到小排序。

  • 在CENTOS 7.3中,top不支持-a选项,支持-o选项。-o “%CPU”是按CPU使用率排序;-o “%MEM”是按内存占用排序,这个与6.7版本的-a含义相同。具体请参见如下附录。

附录:CENTOS 7.3

[CENTOS73 ~]# cat /etc/redhat-release 
CentOS Linux release 7.3.1611 (Core) 
[CENTOS73 ~]# 
[CENTOS73 ~]# uname -a
Linux CENTOS73 3.10.0-514.21.2.el7.x86_64 #1 SMP Tue Jun 20 12:24:47 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[CENTOS73 ~]# 
[CENTOS73 ~]# 
[CENTOS73 ~]# top -bn1 -o "%MEM" | head
top - 22:42:44 up 39 days,  1:30,  2 users,  load average: 0.00, 0.01, 0.05
Tasks: 293 total,   1 running, 292 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.1 sy,  0.0 ni, 99.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 65798332 total, 63365896 free,  1111540 used,  1320896 buff/cache
KiB Swap: 33030140 total, 33030140 free,        0 used. 64057156 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
 3512 root      20   0 2319720 225432  49512 S   0.0  0.3  23:43.69 gnome-shell
 3739 root      20   0 1515744  65180  21744 S   0.0  0.1   0:00.86 evolution-calen
 3653 root      39  19 1308088  40700   7832 S   0.0  0.1   0:00.39 tracker-extract
[CENTOS73 ~]# 
[CENTOS73 ~]# top -bn1 -o "%CPU" | head   
top - 22:42:49 up 39 days,  1:30,  2 users,  load average: 0.00, 0.01, 0.05
Tasks: 293 total,   1 running, 292 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.1 sy,  0.0 ni, 99.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 65798332 total, 63366392 free,  1111044 used,  1320896 buff/cache
KiB Swap: 33030140 total, 33030140 free,        0 used. 64057652 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
    1 root      20   0  196468   7572   3972 S   0.0  0.0   2:33.80 systemd
    2 root      20   0       0      0      0 S   0.0  0.0   0:01.12 kthreadd
    3 root      20   0       0      0      0 S   0.0  0.0   0:06.62 ksoftirqd/0
[CENTOS73 ~]# 
[CENTOS73 ~]# 
[CENTOS73 ~]# free -mlht
              total        used        free      shared  buff/cache   available
Mem:            62G        1.1G         60G         73M        1.3G         61G
Low:            62G        2.3G         60G
High:            0B          0B          0B
Swap:           31G          0B         31G
Total:          94G        1.1G         91G
[CENTOS73 ~]# 

附录:top的-n和-b选项

    -b  :Batch-mode operation
            Starts top in Batch mode, which could be useful for sending output from top to other programs or to a file.  In this
            mode,  top will not accept input and runs until the iterations limit you've set with the `-n' command-line option or
            until killed.
       -n  :Number-of-iterations limit as:  -n number
            Specifies the maximum number of iterations, or frames, top should produce before ending.

原文出处:zhihu -> https://zhuanlan.zhihu.com/p/28337325

猜你喜欢

转载自blog.csdn.net/qq_33468857/article/details/83021323