Linux系统中如何具体查看CPU及内存使用情况的方法呢?

在Linux系统中,监控CPU和内存使用情况是系统管理和性能优化的基础操作,通过命令行工具可以快速获取系统资源状态,帮助定位性能瓶颈,以下是常用的监控方法及工具详解,涵盖实时查看、历史数据统计及关键指标解读。

linux如何查看cpu内存使用情况

CPU使用情况监控工具

CPU使用率是衡量系统负载的核心指标,主要包括用户态(%us)、内核态(%sy)、空闲(%id)、等待I/O(%wa)等维度,不同工具可满足不同场景需求。

top:动态实时监控

top是最基础的进程监控工具,默认按CPU使用率排序,动态刷新进程资源占用情况。

  • 基本用法:直接输入top,默认每3秒刷新一次。
  • 常用选项:
    • -d 秒数:设置刷新间隔,如top -d 5每5秒刷新;
    • -p PID:监控指定进程,如top -p 1234;
    • -c:显示完整命令行而非仅进程名。
  • 关键输出字段:
    • %CPU:进程CPU使用率(单核);
    • %MEM:进程内存使用率;
    • us(用户态)、sy(内核态)、id(空闲)、wa(I/O等待):整体CPU状态,若us+sy超过80%且id持续较低,说明CPU繁忙。
  • 交互操作:按P按CPU排序、M按内存排序、q退出。

htop:增强版实时监控(推荐)

htop是top的升级版,界面更直观(彩色区分、进程树),支持鼠标操作,需安装(Ubuntu/Debian:apt install htop;CentOS/RHEL:yum install htop)。

  • 核心优势:
    • 可横向滚动查看完整命令行;
    • 支持快捷键操作(如F2设置、F9结束进程);
    • 实时显示CPU核心使用率(多核CPU下更清晰)。

mpstat:多CPU核使用率统计

mpstat属于sysstat工具包,可查看每个CPU核心的详细使用情况,适合多核服务器。

  • 基本用法:mpstat -P ALL 1(每秒刷新,显示所有CPU核状态)。
  • 关键输出:
    • %usr:用户态CPU使用率;
    • %sys:内核态CPU使用率;
    • %idle:空闲率,若持续低于10%,说明CPU过载。

sar:历史数据统计

sar(System Activity Reporter)可记录系统历史资源使用情况,需安装sysstat包。

linux如何查看cpu内存使用情况

  • 查看CPU历史数据:sar -u -s 09:00:00 -e 18:00:00(查看当天9点到18点的CPU使用率)。

内存使用情况监控工具

Linux内存管理机制中,buffers(缓冲区)和cached(缓存)可被程序复用,实际可用内存”需结合多个指标判断。

free:简洁内存概览

free是最直观的内存查看工具,默认以KB为单位,推荐使用-h(人性化单位)或-m(MB)。

  • 基本用法:free -h
  • 关键输出字段:
    • total:总内存;
    • used:已用内存(包含应用+缓存+缓冲区);
    • free:完全空闲内存;
    • available:可用内存(free+buffers+cached,可立即分配给新进程),这是判断内存是否充足的核心指标;
    • buff/cache:缓冲区+缓存(可回收,非真正“占用”)。
  • 示例解读:若available持续低于总内存的10%,且swap被频繁使用,说明内存不足。

/proc/meminfo:原始内存数据

/proc/meminfo是内核内存管理的原始接口,free命令的数据来源,适合查看详细参数。

  • 关键字段:
    • MemTotal:总内存;
    • MemFree:完全空闲内存;
    • Buffers:块设备缓冲区;
    • Cached:页缓存;
    • SwapTotal/SwapFree:交换区总大小和剩余大小。

vmstat:虚拟内存统计(含CPU+内存)

vmstat可同时输出CPU、内存、I/O等状态,适合快速综合判断。

  • 基本用法:vmstat 1(每秒刷新)。
  • 关键输出:
    • si(swap in):每秒从交换区调入内存的数据量(KB),若持续大于0,说明内存不足;
    • so(swap out):每秒写入交换区的数据量;
    • buff:缓冲区大小;
    • cache:缓存大小。

smem:进程内存精准统计

smem可计算进程的实际内存占用(区分PSS/USS,避免重复计算共享内存),适合排查内存泄漏。

linux如何查看cpu内存使用情况

  • 基本用法:smem -p -c "pid pss rss"(按进程显示PID、PSS(实际共享内存)、RSS(物理内存))。

常用命令对比速查

以下为CPU和内存监控工具的核心对比,方便快速选择:

命令 主要功能 常用选项 输出重点
top 实时进程资源监控 -d(刷新间隔)、-p(PID) %CPU、%MEM、负载平均值
htop 增强版实时监控 无(需安装) 多核CPU使用率、进程树、彩色界面
mpstat 多CPU核使用率统计 -P ALL(所有核) 各核%usr、%sys、%idle
free 内存使用概览 -h(人性化单位)、-m(MB) available、buff/cache、swap
vmstat CPU+内存+I/O综合统计 1(每秒刷新) si、so、buff、cache、CPU空闲率
smem 进程内存精准分析 -p(进程)、-c(字段) PSS、RSS、进程内存占比

FAQs

Q1:为什么free -h显示的“可用内存”很少,但系统运行并不卡顿?
A:Linux会主动将空闲内存用于buffers(缓冲区)和cached(缓存),以提升文件读写性能,这两部分内存可被程序立即回收,实际可用内存”=free+buffers+cached(即free命令中的available字段),若available充足,即使free值低,系统也不会卡顿;反之,若available持续低于总内存的10%,且swap频繁使用,才说明内存不足。

Q2:top和htop有什么区别?如何选择?
A:top是Linux基础工具,界面简洁,仅支持键盘操作,默认按CPU排序,功能相对基础;htop是增强版,支持彩色显示、进程树、鼠标操作,可实时调整排序/过滤,功能更丰富,选择时,若只需快速查看资源占用,用top;若需详细监控(如多核CPU分析、进程树查看)或交互操作,优先用htop(需先安装,Ubuntu/Debian通过apt install htop,CentOS/RHEL通过yum install htop)。

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

赞 (0)
酷番叔酷番叔
上一篇 2025年9月22日 17:07
下一篇 2025年9月22日 17:46

相关推荐

  • Linux如何创建FTP账户并设置密码?

    在Linux系统中创建FTP账户并设置密码是常见的文件共享需求,通常使用vsftpd(Very Secure FTP Daemon)作为FTP服务器软件,它轻量、安全且配置灵活,以下将详细介绍在Linux环境下创建FTP账户及密码的完整步骤,包括环境准备、安装配置、用户管理、权限控制及测试验证等内容,确保不同层……

    2025年10月4日
    24300
  • Linux权限配置不当,服务器会被黑?

    理解Linux权限基础权限三元组r(读):查看文件/目录内容w(写):修改或删除x(执行):运行程序或进入目录通过 ls -l 查看权限(如 -rwxr–r– 表示所有者有读写执行,同组和其他用户仅有读权限),权限对象用户(User):文件所有者组(Group):共享权限的用户集合其他(Others):系统……

    2025年7月17日
    28300
  • linux命令如何下载数据库

    Linux中,可使用包管理工具如apt-get install(Debian系)

    2025年8月9日
    22400
  • linux 上如何安装系统下载文件

    Linux 上,可使用 wget 或 curl 命令从网络下载安装文件,也可用

    2025年8月16日
    23400
  • linux下如何配置域名解析

    Linux下配置域名解析可通过修改/etc/resolv.conf文件,添加如`nameserver 8.

    2025年8月17日
    22100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信