在linux系统中,查看内存大小是日常运维和开发过程中非常基础的操作,系统提供了多种内置命令可以快速获取内存相关的详细信息,不同命令的输出维度和展示形式有所区别,用户可以根据实际需求选择合适的工具。

使用free命令查看内存
free是最常用的内存查看命令,默认会以KB为单位展示内存使用情况,加上-h参数可以以人类可读的格式(GB、MB)展示结果,更直观易懂。
执行以下命令查看内存信息:
# 以人类可读格式查看内存 free -h
命令输出结果通常包含以下几列:
- total:表示系统的总内存大小,也就是我们查询的内存总容量
- used:表示已经被使用的内存大小
- free:表示完全空闲未被使用的内存大小
- shared:表示多个进程共享的内存大小
- buff/cache:表示被缓冲区(buffer)和页缓存(cache)占用的内存大小,这部分内存可以在需要时释放给应用使用
- available:表示系统可供新应用使用的内存大小,是实际可用内存的参考值
查看/proc/meminfo文件获取详细内存信息
/proc/meminfo是内核提供的内存信息伪文件,里面包含了非常详细的内存相关参数,其中MemTotal字段就是系统的总内存大小,单位是KB。
执行以下命令查看该文件内容:
# 查看内存信息文件 cat /proc/meminfo
我们也可以通过grep命令直接过滤出总内存字段:
# 直接获取总内存大小 cat /proc/meminfo | grep MemTotal
输出结果类似MemTotal: 16384000 kB,表示总内存为16384000KB,换算后约为15.6GB。
使用vmstat命令查看内存状态
vmstat命令主要用于查看系统的虚拟内存、进程、CPU等运行状态,其中也会展示内存相关的统计信息。
执行以下命令查看内存相关数据:
# 查看系统状态,包含内存信息 vmstat
输出结果中的memory部分包含swpd、free、buff、cache四个字段,其中free字段表示空闲内存大小,单位是KB,结合系统总内存参数可以计算出内存使用占比。
不同命令的适用场景
如果只是需要快速了解内存总大小和大致使用情况,优先使用free -h命令,输出简洁直观;如果需要获取更详细的内存参数,比如内存的硬件预留、内核占用等细节,可以查看/proc/meminfo文件;如果需要同时监控内存和CPU、进程的整体运行状态,vmstat命令会更合适。
注意事项
linux系统的内存管理机制会尽可能把空闲内存用于缓存文件数据,所以free命令显示的free值较低并不代表内存不足,available字段才是判断内存是否够用的核心参考。如果需要确认内存硬件的物理规格,还可以使用dmidecode -t memory命令查看,不过该命令需要root权限执行,输出结果中的Size字段就是单条内存的大小,所有内存条Size相加就是总物理内存。
linux内存查看free命令cat_proc_meminfovmstat命令修改时间:2026-06-27 11:12:24