20 个用于 Linux 性能监控的 Sysstat 实用程序命令

linuxoperating systemopen source更新于 2026/2/7 18:07:17

简介

在 Linux 系统管理中,性能监控是一项重要任务。市面上有很多工具可用于此目的,其中最广泛使用的工具之一就是 Sysstat 实用程序。Sysstat 实用程序是一系列工具的集合,可提供详细的系统性能信息,包括 CPU 利用率、内存使用率、磁盘活动和网络活动。

在本文中,我们将探讨 20 个用于 Linux 性能监控的 Sysstat 实用程序命令。

Sysstat 实用程序的安装

在深入研究 Sysstat 实用程序命令之前,我们先来讨论一下如何安装它们。Sysstat 实用程序通常包含在大多数 Linux 发行版中,因此您可能无需手动安装它们。但是,如果您确实需要安装它们,可以使用以下命令 -

对于基于 Debian 的发行版 -

sudo apt-get install sysstat

对于基于 Red Hat 的发行版 -

sudo yum install sysstat

用于性能监控的常用 Sysstat 实用程序命令

现在我们已经对 Sysstat 实用程序有了大致的了解,让我们来探索一些用于性能监控的常用命令。

  • sar -u -

    此命令提供 CPU 利用率统计信息。"-u"选项指定我们要查看 CPU 统计信息。默认情况下,sar 会显示所有 CPU 的 CPU 使用率,但您可以使用"-P"选项指定特定 CPU 的 CPU 使用率。例如,要查看 CPU 0 的 CPU 使用率,请使用以下命令 -

sar -u -P 0
  • sar -r -

    此命令提供内存利用率统计信息。"-r"选项指定我们要查看内存统计信息。默认情况下,sar 会显示所有内存类型的内存使用情况,但您可以使用"-B"选项指定特定内存类型。例如,要查看缓冲区缓存的内存使用情况,请使用以下命令 -

sar -r -B
  • sar -n DEV -

    此命令提供网络活动统计信息。"-n"选项指定我们要查看网络统计信息,"DEV"选项指定我们要查看特定设备的统计信息。默认情况下,sar 会显示所有设备的网络使用情况,但您可以使用"-I"选项指定特定设备。例如,要查看 eth0 的网络使用情况,请使用以下命令 -

sar -n DEV -I ALL -I SUM -I eth0
  • iostat -x -

    此命令提供详细的磁盘活动统计信息,包括读写时间、传输速率和磁盘利用率。"-x"选项指定我们想要查看扩展统计信息。默认情况下,iostat 会显示所有磁盘的统计信息,但您可以使用"-d"选项指定特定磁盘。例如,要查看 sda 的磁盘活动,请使用以下命令 -

iostat -x -d sda
  • pidstat -u −

    此命令提供各个进程的详细信息,包括 CPU 使用率、内存使用率和 I/O 活动。"-u"选项指定查看 CPU 使用率统计信息。默认情况下,pidstat 显示所有进程的统计信息,但您可以使用"-p"选项指定特定进程。例如,要查看进程 ID 1234 的进程统计信息,请使用以下命令 -

pidstat -u -p 1234
  • sar -q −

    此命令提供平均负载统计信息。"-q"选项指定查看平均负载统计信息。默认情况下,sar 显示过去 1、5 和 15 分钟的平均负载,但您可以使用"-s"选项指定不同的时间间隔。例如,要查看过去 10 分钟的平均负载,请使用以下命令 -

sar -q -s 10:00:00
  • sar -W -

    此命令提供交换空间利用率统计信息。"-W"选项指定我们要查看交换空间统计信息。默认情况下,sar 会显示所有设备的交换空间使用情况,但您可以使用"-p"选项指定特定设备。例如,要查看 /dev/sda1 的交换空间使用情况,请使用以下命令 -

sar -W -p /dev/sda1
  • sar -b -

    此命令提供块设备统计信息,包括读写操作和传输速率。"-b"选项指定我们要查看块设备统计信息。例如,要查看 /dev/sda 的块设备统计信息,请使用以下命令 -

sar -b -p /dev/sda
  • mpstat -P ALL -

    此命令提供每个 CPU 的利用率统计信息。"-P ALL"选项指定我们要查看所有 CPU 的 CPU 统计信息。例如,要查看过去 5 秒的 CPU 统计信息,请使用以下命令 -

mpstat -P ALL -I 5
  • iostat -t -

    此命令提供磁盘活动统计信息的时间戳信息。"-t"选项指定我们要查看时间戳。例如,要查看 sda 的带时间戳的磁盘活动,请使用以下命令 -

iostat -t -d sda
  • pidstat -r -

    此命令提供各个进程的内存利用率统计信息。"-r"选项指定我们要查看内存统计信息。默认情况下,pidstat 显示所有进程的统计信息,但您可以使用"-p"选项指定特定进程。例如,要查看进程 ID 1234 的内存统计信息,请使用以下命令 -

pidstat -r -p 1234
  • sar -y −

    此命令提供 TTY 设备的系统统计信息。"-y"选项指定我们要查看 TTY 统计信息。默认情况下,sar 会显示所有 TTY 设备的统计信息,但您可以使用"-t"选项指定特定设备。例如,要查看 tty1 的 TTY 统计信息,请使用以下命令 -

sar -y -t tty1
  • sar -n TCP,ETCP -

    此命令提供 TCP 和扩展 TCP 统计信息。"-n TCP,ETCP"选项指定我们要查看 TCP 和扩展 TCP 统计信息。默认情况下,sar 会显示所有 TCP 连接的统计信息,但您可以使用"-s"选项指定特定连接。例如,要查看过去一小时的 TCP 和扩展 TCP 统计信息,请使用以下命令 -

sar -n TCP,ETCP -s 10:00:00 -e 11:00:00
  • sar -n DEV -

    此命令提供网络设备统计信息,包括网络流量和错误。"-n DEV"选项指定我们要查看网络设备统计信息。

    例如,要查看 eth0 的网络设备统计信息,请使用以下命令 -

sar -n DEV -I eth0
  • sar -S -

    此命令提供内核统计信息,包括上下文切换和中断。"-S"选项指定我们要查看内核统计信息。默认情况下,sar 会显示上一个时间间隔的统计信息,但您可以使用"-I"选项指定不同的时间间隔。例如,要查看过去 5 分钟的内核统计信息,请使用以下命令 -

sar -S -I 300
  • sar -A -

    此命令提供所有可用统计信息的摘要。"-A"选项指定我们要查看所有可用的统计信息。默认情况下,sar 会显示上一个时间间隔的统计信息,但您可以使用"-s"和"-e"选项指定不同的时间间隔。例如,要查看过去一小时所有可用统计信息的摘要,请使用以下命令 -

sar -A -s 10:00:00 -e 11:00:00
  • sar -u ALL -

    此命令提供所有 CPU 的 CPU 利用率统计信息。"-u ALL"选项指定我们要查看所有 CPU 的 CPU 统计信息。例如,要查看过去一小时所有 CPU 的 CPU 利用率统计信息,请使用以下命令 -

sar -u ALL -s 10:00:00 -e 11:00:00
  • sar -P ALL −

    此命令提供所有 CPU 的每个 CPU 利用率统计信息。"-P ALL"选项指定我们要查看所有 CPU 的 CPU 统计信息。例如,要查看过去一小时所有 CPU 的每个 CPU 利用率统计信息,请使用以下命令 -

sar -P ALL -s 10:00:00 -e 11:00:00
  • sar -r -

    此命令提供内存利用率统计信息。"-r"选项指定我们要查看内存统计信息。例如,要查看过去一小时的内存利用率统计信息,请使用以下命令 -

sar -r -s 10:00:00 -e 11:00:00
  • sar -b -

    此命令提供块设备统计信息,包括读写操作和传输速率。"-b"选项指定我们要查看块设备统计信息。默认情况下,sar 显示上一个时间间隔的统计信息,但您可以使用"-s"和"-e"选项指定不同的时间间隔。例如,要查看过去一小时的块设备统计信息,请使用以下命令:

sar -b -s 10:00:00 -e 11:00:00

结论

总而言之,sysstat 软件包提供了各种用于监控 Linux 系统性能的实用工具。使用 sar,我们可以监控 CPU、内存、磁盘、网络和其他系统资源。它能够查看实时和历史统计数据,使我们能够识别性能问题和潜在瓶颈,使其成为系统管理员和开发人员的必备工具。


相关文章


有用资源