插件窝 干货文章 linux常用命令查看内存方法

linux常用命令查看内存方法

内存 bash 命令 进程 34    来源:    2025-04-03

在 Linux 系统中,查看内存使用情况有多种命令和工具,以下是常用的方法及其详细说明:


1. free 命令

最基础的内存查看工具,显示物理内存、交换分区(Swap)的使用情况。

free -h
  • 参数说明
    • -h:以人类可读单位显示(GB/MB)。
    • -m:以 MB 为单位显示。
    • -s N:每隔 N 秒刷新一次(如 free -s 5)。
  • 输出字段
    • total:总内存。
    • used:已用内存(包含缓存和缓冲区)。
    • free:完全未使用的内存。
    • shared/buffers/cache:缓存和缓冲区占用的内存。
    • available:实际可用内存(估算值,更准确)。

2. top 命令

动态查看系统资源使用情况,包括内存、CPU、进程等。

top
  • 内存相关字段
    • KiB Mem:物理内存使用情况。
    • KiB Swap:交换分区使用情况。
    • M 可按内存占用排序进程。
  • 退出:按 q

3. htop 命令(需安装)

增强版的 top,支持颜色和交互式操作。

htop
  • 安装bash sudo apt install htop # Debian/Ubuntu sudo yum install htop # CentOS/RHEL
  • 功能
    • 直观显示内存、CPU、Swap。
    • 支持鼠标点击排序、进程过滤等。

4. vmstat 命令

查看虚拟内存统计信息,包括内存、Swap、IO、CPU。

vmstat -s
  • 关键输出
    • 显示内存总量、空闲内存、缓存等详细信息。
  • 动态监控(每 2 秒刷新一次): bash vmstat 2

5. /proc/meminfo 文件

直接读取内核提供的原始内存信息。

cat /proc/meminfo
  • 关键字段
    • MemTotal:总物理内存。
    • MemFree:完全空闲内存。
    • Buffers/Cached:缓存和缓冲区。
    • SwapTotal/SwapFree:交换分区信息。

6. glances 工具(需安装)

综合监控工具,支持内存、CPU、磁盘、网络等。

glances
  • 安装bash pip install glances

7. smem 命令(需安装)

专注于进程内存占用的工具,支持按 USS/PSS/RSS 统计。

smem -s swap -r
  • 参数
    • -u:按用户分组。
    • -p:显示百分比。
  • 安装bash sudo apt install smem # Debian/Ubuntu

8. ps 命令

查看特定进程的内存占用。

ps aux --sort=-%mem | head -n 10
  • 说明
    • %MEM:进程占用物理内存百分比。
    • RSS:实际物理内存用量(KB)。

9. sar 命令(需安装 sysstat

历史内存监控(适合分析长期趋势)。

sar -r 1 3    # 每隔1秒采样,共3次

总结建议

  • 快速查看free -hcat /proc/meminfo
  • 动态监控top/htop
  • 进程分析smemps aux --sort=-%mem
  • 高级统计vmstatsar

根据需求选择合适的工具即可!