Linux内存使用异常如何速查?

free 命令(最常用)

作用:快速查看物理内存、交换空间(Swap)和内核缓冲区的使用情况。
常用参数

  • -h(人性化显示单位):free -h
  • -s [秒](定时刷新):free -h -s 5(每5秒刷新)

输出解析

              total    used    free    shared  buff/cache   available
Mem:           7.6G    2.1G    3.2G     123M        2.3G        5.0G
Swap:          2.0G     0B      2.0G
  • available:系统可用内存(含缓存可回收部分),是判断内存余量的关键指标。
  • buff/cache:被内核缓冲区(Buffer)和页面缓存(Cache)占用的内存,必要时可被释放。

tophtop 命令(动态监控)

作用:实时显示进程级内存占用,支持交互式排序。

  • 基础用法:直接运行 top,按 Shift+M 按内存使用排序。
  • 进阶工具htop(需安装,界面更友好):
    sudo apt install htop  # Debian/Ubuntu
    sudo yum install htop  # CentOS/RHEL
    htop

    关键列

  • %MEM:进程占用物理内存百分比。
  • RES:实际使用的物理内存(单位KB)。
  • VIRT:虚拟内存总量(含共享库和Swap)。

解析 /proc/meminfo(底层数据源)

作用:所有内存命令的数据均来源于此文件,提供最详细的内存统计。
查看方式

cat /proc/meminfo

核心字段

  • MemTotal:总物理内存。
  • MemFree:完全未使用的内存。
  • Cached:页面缓存(加速文件读写)。
  • SwapTotalSwapFree:交换空间总量与剩余量。
  • Shmem:共享内存(如tmpfs)。

专业提示/proc/meminfo 中的 MemAvailablefree 命令中 “available” 的原始数据,反映系统真实可用内存。


vmstat 命令(分析内存趋势)

作用:监控内存、Swap、I/O和CPU的实时变化,适合诊断性能瓶颈。
示例

vmstat -w -S M 1  # 每1秒刷新,以MB为单位显示

输出关键列

  • swpd:已用Swap大小。
  • free:空闲物理内存。
  • buffcache:缓冲区与缓存用量。
  • si(swap in)/ so(swap out):Swap交换频率,持续不为0可能预示内存不足。

smem 命令(按用户统计)

作用:按用户或进程聚合内存占用,需安装:

sudo apt install smem  # Debian/Ubuntu
sudo yum install smem  # CentOS/RHEL

常用示例

smem -u  # 按用户汇总内存
smem -p -P firefox  # 查看Firefox相关进程的内存

glances(全能监控工具)

作用:图形化终端仪表盘,集成内存、CPU、磁盘等监控。
安装与使用:

pip install glances
glances

在Linux系统中,监控内存使用情况是系统管理和故障排查的核心任务之一。以下是几种专业且高效的方法,结合常用命令和系统文件,帮助您全面掌握内存状态,

界面中 MEM 部分直观展示使用率、Swap及进程排行。


场景化推荐

  • 快速概览free -h
  • 诊断卡顿top(观察高内存进程)
  • 深挖瓶颈vmstat 结合 si/so
  • 开发调试smem/proc/meminfo

为什么关注内存指标?

  • 物理内存不足 → 触发Swap交换,显著降低性能。
  • 缓存(Cache)占用高 → 通常是正常优化,非问题。
  • Available值过低(如 <10%)→ 需及时扩容或优化应用。

ℹ️ 注意:Linux会充分利用空闲内存作缓存,“free” 值低不代表内存紧张,”available” 才是关键。


引用说明: 参考 Linux man 手册(man freeman top)、Kernel.org /proc文档及 Ubuntu Server 最佳实践指南,命令兼容主流发行版(Ubuntu, CentOS, RHEL等)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8020.html

(0)
酷番叔酷番叔
上一篇 2025年7月19日 20:26
下一篇 2025年7月19日 20:38

相关推荐

  • 手机充电到100%真的伤电池吗

    在Linux系统中,hosts文件是一个用于本地域名解析的关键配置文件,它允许用户手动指定域名与IP地址的映射关系,绕过DNS服务器直接生效,以下是如何安全、高效配置hosts文件的完整指南:hosts文件的作用与重要性核心功能:当访问域名(如www.example.com)时,系统首先查询hosts文件,若存……

    2025年6月20日
    10700
  • 如何更新软件源?

    通过包管理器安装(推荐首选)包管理器是 Linux 的核心工具,能自动处理依赖关系和更新,不同发行版使用不同的包管理器:Debian/Ubuntu 系(APT)# 搜索软件包(如 Firefox)apt search firefox# 安装软件sudo apt install firefox# 卸载软件(保留配……

    2025年7月9日
    9100
  • 程序员如何避免996加班?

    在Linux系统中监控硬件温度对于维护系统稳定性、预防过热损坏及优化性能至关重要,以下详细介绍多种命令行与图形化工具的操作方法,涵盖CPU、硬盘、GPU等核心硬件:核心工具安装与配置lm-sensors(CPU/主板传感器)安装:sudo apt install lm-sensors # Debian/Ubun……

    2025年8月8日
    9200
  • Linux如何配置支持SMP多处理器协同工作?

    配置Linux支持SMP(对称多处理)是提升服务器和高性能计算系统性能的关键步骤,SMP允许多个CPU核心共享内存和I/O子系统,通过并行处理任务显著提高系统吞吐量,以下是详细的配置流程和优化方法,涵盖硬件基础、内核配置、启动参数、系统调优及工具使用等内容,硬件基础准备SMP配置的前提是硬件支持,需确保以下组件……

    2025年10月9日
    8700
  • 在Linux操作系统中,用什么正确方法打开BMP图片文件?

    在Linux系统中,打开BMP(Bitmap)图片文件有多种方式,既包括图形界面下的可视化工具,也有命令行下的高效操作方法,不同场景下用户可选择适合的工具,以下是详细说明,图形界面工具打开BMP文件图形界面工具适合普通用户,操作直观,无需记忆命令,Linux主流桌面环境(如GNOME、KDE、XFCE等)通常自……

    2025年8月25日
    8800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信