CentOS7查看服务器内存
摘要:在linux平台上,可以通过多种工具来查看服务器的内存使用情况。在CentOS7系统中,可以通过free、top、slabtop、vmstat、sar等工具来查看系统的内存使用情况。本文将介绍在CentOS7中使用这些工具的基本方法,以帮助系统管理员更好地了解系统的内存使用情况。
一、free命令
free命令是Linux系统中最常用的内存查看命令,能够提供当前系统的内存占用情况,并提供更为详细的输出结果。
free命令可以使用-t参数来查看当前系统的总内存,如:
# free -t
total used free shared buffers cached
Mem: 121768 56496 65272 0 5484 29192
-/+ buffers/cache: 21120 100648
Swap: 0 0 0
此时,total就代表了目前系统的总内存;used就是当前已经使用的内存;free就表示当前系统的空闲内存;buffers和cached则表示系统分配的缓存内存。
在查看实际可用内存时,可以通过减去buffers和cached,来得到上面所提到的-/+ buffers/cache,即为可用内存。
二、top命令
top命令被称为是"实时监控"系统,不仅可以查看内存的状态,还能查看CPU状态、内核使用情况等。
如果不加参数,输入top命令后,系统回显如下:
top - 01:17:52 up 15 days, 28 min, 4 users, load average: 0.47, 0.51, 0.50
KiB Mem : 121768 total, 56884 free, 73700 used, 21184 buff/cache
KiB Swap: 10485 total, 10485 free, 0 used. 97452 avail Mem
可以从上述内容可以清楚的看到,总的可用内存(avail Mem),各种类型的内存(Mem,buff/cache,Swap)以及它们的使用情况。
三、slabtop命令
slabtop可以查看slab类型的内存使用情况,其输出结果主要包括了每个slab类型的内存大小、已使用的内存大小。
使用slabtop除了能实时反馈slab类型内存的使用情况外,也可以按指定的顺序进行排序,其中,默认情况下会按照内存使用量进行排序,可以使用-s参数对排序结果进行修改处理。
例如:
# slabtop -ns1
Active / Total Objects (% used) : 483112 / 483463 (99.9%)
Active / Total Slabs (% used) : 15735 / 15735 (100.0%)
四、vmstat命令
vmstat是查看虚拟机状态的一种特殊的工具,其中,vm_stat能够查看内核中实际使用的内存。
使用vmstat命令,可以查看虚拟内存缓存区域,特别是活动页面、文件页面、内存页面、空闲页面等。
例如:
# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 5642984 57440 3115540 0 0 0 0 1 33 0 0 100 0 0
从例子中,我们可以看到free、buff、cache、si、so等,其中free表示空闲内存,buff表示缓冲区的内存,cache表示缓存的内存,si表示从磁盘调入内存的数量,so表示从内存调出的数量。
五、sar
sar是linux系统下的系统性能分析命令,通过它,可以查看系统每10分钟平均值,这样,可以更好地了解系统的使用情况,从而有更多地优化空间。
也可以使用sar来查看内存使用情况,例如:
# sar -r 1 5
02:19:17 PM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit
02:19:18 PM 5338800 6819368 56.30 57300 2998240 6868792 47.85
02:19:19 PM 5339944 6818224 56.30 57312 2999440 6868792 47.85
02:19:20 PM 5345024 6813144 56.25 57316 3001456 6868792 47.85
02:19:21 PM 5348576 6809592 56.23 57320 3002240 6868792 47.85
02:19:22 PM 5352000 6806260 56.22 57324 3003088 6868792 47.85
六、结论
以上介绍的几种工具,在查看系统中的内存使用情况都有较好的应用. 可以通过free命令迅速得到系统的内存使用情况,top命令能够看到实时的情况,slabtop命令能够查看slab类型的内存占用情况,vmstat命令能够查看内核使用的内存占用情况,而sar能够查看10分钟内的内存使用情况. 因此,在CentOS7系统中,我们可以从不同的角度来了解服务器的内存使用情况,从而更好地对系统进行优化和维护。