如何从命令行显示CPU使用率

时间:2020-03-21 11:43:26  来源:igfitidea点击:

本教程介绍了如何使用mpstat实用工具从命令行显示CPU使用情况。
我们大多数人使用top命令来显示CPU使用率和正在运行的进程。

就像top命令一样,mpstat也显示每个处理器的活动。
这个方便的实用程序可以轻松监视任何类似Unix的操作系统中的CPU使用率。
如果系统上有多核处理器,则mpstat是显示每个处理器核心使用情况的最终选择。

从命令行显示CPU使用率

mpstat在最现代的Linux操作系统的默认存储库中可用。

要将其安装在Arch Linux及其衍生版本上,请运行:

$sudo pacman -S sysstat

在RHEL,CentOS,Fedora上:

$sudo dnf install sysstat

或者,

$sudo yum install sysstat

在Debian,Ubuntu和Linux Mint上:

$sudo apt-get install sysstat

mpstat命令的典型语法为:

mpstat [ -P { cpu | ALL } ] [ -V ] [ interval [ count ] ]

让我们看一些实时的例子。

检查CPU使用率的快速方法是运行:

$mpstat

每个输出信息的作用。

  • 02:18:23-运行mpstat的时间。
  • all-表示统计信息是所有处理器之间的平均值。
  • %usr-显示在用户级别(应用程序)执行时发生的CPU利用率百分比。
  • %nice-以优先级显示在用户级别执行时发生的CPU利用率百分比。
  • %sys-显示在系统级别(内核)执行时发生的CPU利用率百分比。
  • %iowait-显示系统有未完成的磁盘I/O请求时,一个或者多个CPU空闲的时间百分比。
  • %irq-显示一个或者多个CPU服务硬件中断所花费的时间百分比。
  • %soft-显示一个或者多个CPU服务软件中断所花费的时间百分比。
  • %steal-显示虚拟机管理程序为另一个虚拟处理器提供服务时,一个或者多个虚拟CPU在非自愿等待中花费的时间百分比。
  • %guest-显示一个或者多个CPU运行虚拟处理器所花费的时间百分比。
  • %gnice-显示一个或者多个CPU运行一个好的guest虚拟机所花费的时间百分比。
  • %idle-显示一个或者多个CPU空闲且系统没有未完成的磁盘I/O请求的时间百分比。

正如我在介绍性部分中已经提到的那样,mpstat命令将显示所有处理器核心活动。
如果要查看特定处理器核心(例如第一个处理器核心)的CPU使用率,请运行:

$mpstat -P 0

要显示第二个核心,请运行:

$mpstat -P 1

如果我们有多核CPU,这将很有帮助。
请注意,处理器核心号将从0(零)开始。
如果我们具有四核CPU,则每个处理器核心将称为cpu0,cpu1,cpu2和cpu3.

要显示所有处理器的CPU使用率,请使用以下命令:

$mpstat -P ALL

我们还可以按特定的时间间隔显示CPU活动。
例如,要以60秒(即1分钟)的间隔显示5个报告,请运行以下命令:

$mpstat 60 5

要显示CPU接收到的详细信息中断,请运行:

$mpstat -l ALL

中断统计信息来自/etc/interrupts文件。
我们可以使用“ tail”命令检查它,如下所示:

$tail /etc/interrupts

我们可以使用如下所示的-A选项来组合所有处理器的中断和CPU使用率。

$mpstat -A

要检查mpstat的版本,请运行:

$mpstat -V

有关更多详细信息,请参见手册页。

$man mpstat