用于 Linux 性能监控的“Sysstat”实用程序的 20 个有用命令
介绍
在 Linux 系统管理领域,性能监控是一项重要任务。有很多工具可用于此目的,其中最广泛使用的工具之一是 Sysstat 实用程序。 Sysstat 实用程序是提供详细系统性能信息的工具集合,包括 CPU 利用率、内存使用情况、磁盘活动和网络活动。
在本文中,我们将探讨用于 Linux 性能监控的 Sysstat 实用程序的 20 个有用命令。
安装 Sysstat 实用程序
在我们深入研究 Sysstat 实用程序命令之前,我们首先讨论如何安装它们。大多数 Linux 发行版中通常都包含 Sysstat 实用程序,因此您可能不需要手动安装它们。但是,如果您确实需要安装它们,可以使用以下命令 -
对于基于 Debian 的发行版 -
sudo apt-get install sysstat
对于基于红帽的发行版 -
sudo yum install sysstat
用于性能监控的顶级 Sysstat 实用程序命令
现在我们已经了解了 Sysstat 实用程序的概述,接下来让我们探讨一些用于性能监控的顶级命令。
sar -u -
此命令提供 CPU 利用率统计信息。 “-u”选项指定我们想要查看 CPU 统计信息。默认情况下,sar 显示所有 CPU 的 CPU 使用情况,但您可以使用“-P”选项指定特定 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 全部 -
此命令提供每个 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 全部 -
此命令提供所有 CPU 的 CPU 利用率统计信息。 “-u ALL”选项指定我们想要查看所有 CPU 的 CPU 统计信息。例如,要查看过去一小时所有 CPU 的 CPU 利用率统计信息,请使用以下命令 -
sar -u ALL -s 10:00:00 -e 11:00:00
sar -P 全部 -
此命令提供所有 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、内存、磁盘、网络和其他系统资源。能够查看一段时间内的实时和历史统计数据,使我们能够识别性能问题和潜在瓶颈,使其成为系统管理员和开发人员的重要工具。