上一篇
Linux内存查看方法
- Linux
- 2025-06-15
- 9
Linux查看内存使用常用命令: free -h显示总量、已用和空闲内存; top或 htop实时监控进程内存占用; vmstat分析内存趋势, /proc/meminfo文件提供详细数据。
free 命令(最常用)
作用:快速查看内存总量、使用量及缓存情况
常用参数:-h(人性化单位)、-s(间隔刷新)
示例:
free -h
输出解读:

- available:系统可用内存(含缓存可回收部分),关键指标!
- buff/cache:内核缓存(可被程序快速回收)
- Swap:虚拟内存使用量(过高可能需优化物理内存)
top / htop 命令(动态监控)
作用:实时查看进程级内存占用
操作:
- 运行 top 后按 M 按内存排序
- htop(需安装)提供更友好的交互界面
关键列:
- %MEM:进程占用物理内存百分比
- VIRT:虚拟内存总量(含共享库等)
- RES:实际物理内存使用量(常关注此项)
/proc/meminfo(底层数据源)
作用:所有内存命令的数据来源,提供最详细信息
查看方式:
cat /proc/meminfo
核心参数:

- MemTotal:总物理内存
- MemFree:完全未使用的内存
- Cached:页面缓存(文件读取缓存)
- SwapCached:交换区缓存
- Buffers:块设备缓存(如磁盘写入)
- Shmem:共享内存/tmpfs用量
vmstat 命令(统计内存趋势)
作用:监控内存、交换、IO等系统活动
示例(每2秒刷新1次):
vmstat 2
内存相关输出:

--memory-- --swap-- swpd free buff cache si so 0 1.2G 0.3G 4.1G 0 0
- si/so:Swap换入/换出速度(>0 表示内存紧张)
- buff/cache:与 free 命令含义一致
smem 工具(高级报告)
安装:sudo apt install smem(Debian/Ubuntu)
优势:按进程、用户或全局统计实际内存占用(PSS/USS)
示例:
smem -t -k # 表格化显示(含百分比)
- USS:进程独占内存(最准确)
- PSS:均摊共享内存后的实际用量
GNOME System Monitor(图形化工具)
适用场景:桌面环境用户
路径:gnome-system-monitor → “资源”标签页
功能:直观展示内存/交换空间曲线图及进程列表
关键概念解析
- 可用内存(available) ≠ 空闲内存(free):
available = free + 可回收缓存(系统实际可用资源)
- 缓存(Cache):主动保留加速读写,内存不足时自动释放
- Swap使用:少量使用正常,持续增长需警惕内存瓶颈
最佳实践建议
- 日常监控用 free -h 关注 available 值
- 进程排查用 top 或 smem 定位高内存进程
- 内存泄漏检测:连续运行 vmstat 2 观察 free 和 si/so 变化
- 警惕现象:Swap持续写入(so>0)且 available < 10% 总内存
引用说明参考 Linux man 手册(free、top、vmstat)、内核文档 /proc/meminfo,以及 Red Hat 性能优化指南,数据解读基于 Linux 内核内存管理机制。