温馨提示×

CentOS下cpustat命令详解

小樊
42
2025-12-19 16:51:43
栏目: 智能运维

cpustat 是一个用于监控系统 CPU 使用情况的命令行工具,它是 sysstat 包的一部分。sysstat 是一个强大的性能监控和报告工具集,广泛用于 Linux 系统中。cpustat 提供了实时的 CPU 使用情况统计信息,包括用户空间占用、系统空间占用、空闲时间等。

安装 sysstat

在 CentOS 上安装 sysstat,可以使用以下命令:

sudo yum install sysstat

基本用法

cpustat 的基本语法如下:

cpustat [选项] [间隔秒数] [计数次数]
  • 选项:可以指定输出的详细程度和其他参数。
  • 间隔秒数:指定两次输出之间的时间间隔(以秒为单位)。默认值为 1 秒。
  • 计数次数:指定输出的次数。如果不指定,默认会持续输出。

常用选项

  • -c:显示 CPU 的详细统计信息,包括用户空间占用、系统空间占用、空闲时间等。
  • -m:显示内存和交换空间的使用情况。
  • -P:指定要监控的 CPU 核心。可以指定单个核心(如 -P 0)或多个核心(如 -P 0,1,2,3)。
  • -u:显示用户空间占用。
  • -s:显示系统空间占用。
  • -i:显示中断和上下文切换的统计信息。
  • -w:显示 CPU 等待 I/O 的时间。

示例

  1. 显示所有 CPU 的详细统计信息
cpustat -c
  1. 每隔 5 秒显示一次 CPU 统计信息,共显示 3 次
cpustat -c 5 3
  1. 监控特定 CPU 核心(如核心 0 和 1)的统计信息
cpustat -c -P 0,1
  1. 显示 CPU 等待 I/O 的时间
cpustat -w

输出示例

cpustat 的输出通常包括以下列:

  • usr:用户空间占用 CPU 的百分比。
  • sys:系统空间占用 CPU 的百分比。
  • idle:CPU 空闲时间的百分比。
  • iowait:CPU 等待 I/O 的时间百分比。
  • irq:处理中断的时间百分比。
  • softirq:处理软中断的时间百分比。
  • steal:虚拟机等待物理 CPU 的时间百分比(仅在虚拟化环境中有效)。
  • guest:运行虚拟机的时间百分比(仅在虚拟化环境中有效)。

注意事项

  • cpustat 需要 root 权限才能显示完整的统计信息。
  • 在虚拟化环境中,stealguest 列会显示虚拟机等待物理 CPU 的时间以及运行虚拟机的时间。

通过 cpustat,你可以方便地监控和分析系统的 CPU 使用情况,从而更好地了解系统的性能瓶颈和优化方向。

0