linux服务器如何查询cpu的使用信息

在Linux服务器运维中,实时监控CPU使用情况是保障系统稳定运行的关键,通过命令行工具可以高效获取CPU的实时负载、核心利用率、进程分布等详细信息,以下是常用查询方法及具体操作解析。

linux服务器如何查询cpu的使用信息

top命令:实时监控CPU与进程状态

top是最常用的动态监控工具,默认每3秒刷新一次数据,可直观查看CPU整体及各核心使用率、进程资源占用情况。
基本用法

top

关键输出字段解析(以CPU使用率为例):
| 字段 | 含义 | 说明 |
|——|————————–|———————————————————————-|
| %us | 用户空间CPU占用率 | 进程在用户态执行代码的时间占比 |
| %sy | 内核空间CPU占用率 | 进程在内核态(如系统调用)执行代码的时间占比 |
| %ni | 优先级进程CPU占用率 | 通过nice命令调整优先级的进程占用率 |
| %id | 空闲CPU占比 | CPU空闲时间占比,越高表示系统负载越低 |
| %wa | 等待I/O的CPU占比 | CPU等待磁盘/网络I/O完成的时间占比,过高可能意味着存储性能瓶颈 |
| %hi | 硬中断CPU占比 | 处理硬件中断的时间占比(如网卡、磁盘中断) |

交互操作技巧

  • 1 切换显示各CPU核心使用率(适用于多核CPU);
  • PCPU使用率降序排序,M 按内存使用率排序;
  • d 修改刷新间隔(如输入5表示每5秒刷新一次)。

uptime命令:查看系统负载平均值

uptime以简洁形式展示系统最近1分钟、5分钟、15分钟的CPU负载平均值,适用于快速判断系统整体负载情况。
基本用法

uptime

输出示例14:30:25 up 10 days, 3:15, 2 users, load average: 0.45, 0.32, 0.28

  • load average后三个数值分别代表1分钟、5分钟、15分钟内的平均负载,数值越接近CPU核心数表示负载越高(如4核CPU负载达4时表示CPU已满载)。

vmstat命令:统计CPU与系统资源使用

vmstat提供进程、内存、I/O、CPU等统计信息,适合分析CPU空闲、等待、系统调用等细分指标。
基本用法

linux服务器如何查询cpu的使用信息

vmstat 1 5  # 每1秒刷新一次,共输出5次

CPU相关字段解析
| 字段 | 含义 | 正常范围 |
|——|————————–|——————————|
| r | 就绪进程数 | 单核CPU建议不超过3,多核按核心数比例调整 |
| b | 等待I/O的进程数 | 长期大于1需检查磁盘性能 |
| us | 用户态CPU占用率 | 同top的%us |
| sy | 内核态CPU占用率 | 同top的%sy |
| id | 空闲CPU占比 | 同top的%id |
| wa | 等待I/O的CPU占比 | 同top的%wa |

mpstat命令:按CPU核心分析使用率

mpstatsysstat工具包的一部分,需安装sysstatyum install sysstatapt install sysstat),可单独查看每个CPU核心的使用情况。
基本用法

mpstat -P ALL 1 3  # 每1秒刷新,查看所有核心,共3次

输出示例CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle

  • CPU列中all表示所有核心平均,01等表示具体核心编号,通过对比可定位是否存在单个核心过载(如某些进程绑定核心导致不均衡)。

/proc/cpuinfo:查看CPU硬件信息

若需了解CPU物理规格(如型号、核心数、频率),可查看/proc/cpuinfo文件:

cat /proc/cpuinfo | grep "model name|processor|cpu cores"
  • processor数量为逻辑核心数(含超线程),cpu cores为物理核心数。

htop命令:增强版进程监控(可选)

htoptop更直观,支持颜色区分、鼠标操作、进程树显示等,需安装(yum install htopapt install htop):

htop

可通过快捷键F2配置显示列,F5查看进程树,t查看线程实时状态。

linux服务器如何查询cpu的使用信息

相关问答FAQs

Q1:为什么top命令显示的CPU使用率总和超过100%?
A:当服务器启用超线程(Hyper-Threading)技术时,逻辑核心数是物理核心数的2倍,此时CPU使用率按逻辑核心计算,4核8逻辑的服务器,单核心满载时总使用率可达100%,8核心均满载时总使用率才为800%,若%us%sy%ni等指标相加超过100%,可能是统计周期内CPU存在并行任务处理(多线程同时占用不同核心)。

Q2:如何查看CPU的历史使用率数据?
A:需安装sysstat工具包,使用sar命令查询历史记录,默认sysstat会保留每日数据(通常在/var/log/sysstat/目录下,如sa25),查看昨日CPU使用率:

sar -u -f /var/log/sysstat/sa25

查看实时CPU使用率并记录到文件:

sar -u 1 10 > cpu_usage.log  # 每1秒记录一次,共10次,保存至cpu_usage.log

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

(0)
酷番叔酷番叔
上一篇 2025年9月9日 15:42
下一篇 2025年9月9日 16:00

相关推荐

  • 怎样在Linux虚拟机轻松进入桌面环境?

    前期准备安装虚拟化软件VMware Workstation(官网下载)VirtualBox(官网下载)二者均提供免费版本,安装时需启用虚拟化支持(在BIOS中开启Intel VT-x/AMD-V),准备Linux镜像推荐发行版:Ubuntu(自带桌面)、CentOS(需手动安装桌面)从官方渠道下载ISO:Ubu……

    2025年7月13日
    21500
  • 如何快速查看Linux磁盘唯一ID?

    通过 lsblk 命令(推荐)作用:列出块设备信息,包含设备路径、UUID 和文件系统类型,步骤:打开终端,输入: lsblk -o NAME,UUID,SERIAL,MODEL查看输出示例: NAME UUID SERIAL MODELsda 5f3e8a1c-01e4-4b2a-9c7d-8a1b0c9d0……

    2025年6月15日
    20200
  • Linux卡死?如何秒切命令行紧急处理!

    临时切换(无需重启)方法1:快捷键切换虚拟终端步骤:同时按下 Ctrl + Alt + F1 到 F6 中的任意键(如 F3),系统立即切换到纯命令行终端(tty),需输入用户名和密码登录,返回图形界面:按 Ctrl + Alt + F2 或 F7/F8(不同发行版可能不同,通常F1-F6为CLI,F7/F8为……

    2025年7月4日
    28300
  • Linux触摸屏失灵?一键安装驱动解决

    安装前的准备确认硬件识别终端执行:lsusb # 查看USB触摸设备cat /proc/bus/input/devices | grep -i touch # 检查内核是否识别触摸设备若设备未列出,需检查硬件连接或驱动兼容性(如部分旧设备需内核模块usbtouchscreen),更新系统避免依赖冲突:sudo……

    2025年6月13日
    23100
  • 在Linux操作系统下,如何彻底卸载JDK1.7版本?

    在Linux系统中卸载JDK1.7需要根据其安装方式选择不同的方法,常见的安装方式包括通过RPM/DEB包管理器安装、手动解压tar.gz包安装或通过第三方工具(如SDKMAN!)安装,卸载前需先确认当前JDK的版本、安装路径及安装方式,避免误操作影响系统其他依赖,以下是详细的卸载步骤及注意事项,卸载前准备工作……

    2025年9月20日
    16400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信