简介:今天发现有台服务器的内存占用达到90%多,导致很多应用无法正常运行,因此需要查找一下内存资源占用的情况。
本文主要介绍使用多种工具查看服务器内存资源使用情况,详细内容请参考下文。
一、登录Linux系统
1、登录系统
2、执行指令# free查看服务器内存
3、执行指令# free -g以G为单位来显示内存的信息
备注:执行free命令查看内存信息的各项指标解析如下
- total:表示 总计物理内存的大小。
- used:表示 已使用多少。
- free:表示 可用内存多少。
- Shared:表示多个进程共享的内存总额。
- Buffers/cached:表示 磁盘缓存的大小。
二、vmstat命令
1、vmstat介绍
vmstat命令:常用来获得有关服务器进程、内存、页面交换空间及 CPU活动的信息。这些信息反映了系统的负载情况。系统中运行的每个进程都需要使用到内存,但不是每个进程都需要每时每刻使用系统分配的内存空间。当系统运行所需内存超过实际的物理内存,内核会释放某些进程所占用但未使用的部分或所有物理内存,将这部分资料存储在磁盘上直到进程下一次调用,并将释放出的内存提供给有需要的进程使用。
2、查看vmstat版本
执行指令# vmstst –version查看vmstat版本信息
3、显示内存的统计信息
执行指令# vmstat -s -n显示服务器内存的统计信息
备注:参数 [-s]:显示内存相关的统计信息,[-n]:只在开始时显示一次字段名,针对多次收集信息的情况输出人性化一点(可以不使用)。
也可以执行指令# cat /proc/meminfo查看内存信息
4、查看活跃和非活跃内存
执行指令# vmstat -a显示服务器的活跃和非活跃内存
5、查看vmstat版本
执行指令# vmstat -S M 2 8以M为单位每两秒显示内存使用情况,联系显示8次。
三、dmesg命令
1、dmesg介绍
dmesg命令:dmesg命令主要是显示linux内核的环形缓冲区信息,可以从中获得诸如系统架构、cpu、挂载的硬件,mem等多个运行级别的大量的系统信息。当计算机启动时,系统内核(操作系统的核心部分)将会被加载到内存中。在加载的过程中会显示很多的信息,在这些信息中可以看到内核检测硬件设备。
2、查看内存使用情况
执行指令# dmesg | grep mem
3、查看dmesg日志
执行指令# tl -20 /var/log/dmesg