什么是sar?

sar 是 System Activity Reporter(系统活动报告工具)的缩写,它是一个用于收集、报告和分析系统性能指标的命令行工具。sar 命令通常在 Linux 和 Unix 系统上使用。

sar 命令可以提供有关系统资源使用情况的详细信息,包括 CPU 使用率、内存使用情况、磁盘 I/O、网络活动等。它通过定期采样系统性能指标,并将采样数据保存到文件中,以供后续分析和报告。

安装sar

在 CentOS 系统中,默认情况下是没有安装 sar 命令的。sar 命令属于 sysstat 包,需要单独安装。

您可以按照以下步骤在 CentOS 上安装 sysstat 包以获取 sar 命令:

sudo yum update && sudo yum install sysstat -y

测试是否安装成功

sar -u

安装会遇到的问题

如果您在尝试使用 sar 命令时遇到 "无法打开 /var/log/sa/sa08: 没有那个文件或目录" 错误,可能是因为 sysstat 包尚未开始收集系统性能数据。

sysstat 包默认情况下并不会立即开始收集数据,而是需要进行一些配置。请按照以下步骤进行配置:

  1. 打开终端或 SSH 连接到您的 CentOS 服务器。
  2. 使用 root 或具有管理员权限的用户执行以下命令以编辑 sysstat 配置文件 /etc/sysconfig/sysstatsudo vi /etc/sysconfig/sysstat
  3. 在文件中找到 ENABLED="false" 这一行,并将其改为 ENABLED="true"。确保该行没有被注释掉(没有前面的 # 符号)。
  4. 保存并关闭文件。在 vi 编辑器中,按下 Esc 键,然后输入 :wq 并按下回车键。
  5. 启动 sysstat 服务:sudo systemctl start sysstat
  6. 确保 sysstat 服务在系统启动时自动启动:sudo systemctl enable sysstat

现在,sysstat 服务已经启动,并开始收集系统性能数据。您可以等待一段时间,然后再次尝试使用 sar 命令查看数据:

sar -u

请注意,sysstat 默认每 10 分钟采集一次数据。因此,您可能需要等待一段时间,直到足够的数据被收集和保存在 /var/log/sa 目录下的文件中。

使用 sar 命令

您可以查看系统在不同时间段的性能趋势,分析系统的瓶颈和负载情况,以及识别性能问题和优化机会。

  1. 查看 CPU 使用率:sar -u
  2. 查看内存使用情况:sar -r
  3. 查看磁盘 I/O 统计:sar -b
  4. 查看网络接口统计:sar -n DEV

以下是 sar 命令的一些常见用法示例:

这只是一些常见用法示例,sar 命令还有许多其他选项和参数,可以根据您的需求进行定制和扩展。您可以使用 man sar 命令或 sar --help 命令获取更多关于 sar 命令的详细信息和使用说明。

输出配置文件

sar -ur 1 300 >testlog.txt

命令 sar -ur 1 300 > testlog.txt 的含义如下:

  • sar: 是系统性能分析工具的命令。
  • -ur: 是 sar 命令的选项,表示同时显示 CPU 使用率和内存使用率。
  • 1: 是采样间隔,表示每秒采集一次数据。
  • 300: 是采样次数,表示总共采集 300 次数据。
  • >: 是重定向操作符,将命令的输出重定向到文件。
  • testlog.txt: 是输出文件的名称,即将命令的输出保存到名为 testlog.txt 的文件中。

查看输出的文件

Linux 3.10.0-1160.81.1.el7.x86_64 (localhost.localdomain) 	2023年08月29日 	_x86_64_	(4 CPU)

10时47分46秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分47秒     all      9.69      0.00      7.40      0.00      0.00     82.91

10时47分46秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分47秒    393012  32552872     98.81      2104   8419032  26637880     80.85  23112136   5026240       860

10时47分47秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分48秒     all     11.51      0.00      6.39      0.00      0.26     81.84

10时47分47秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分48秒    395248  32550636     98.80      2104   8419376  26637096     80.85  23110136   5026448       864

10时47分48秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分49秒     all      6.87      0.00      7.38      0.00      0.00     85.75

10时47分48秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分49秒    394232  32551652     98.80      2104   8419468  26637880     80.85  23110200   5026620       888

10时47分49秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分50秒     all      5.64      0.00      5.64      0.00      0.00     88.72

10时47分49秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分50秒    394508  32551376     98.80      2104   8419476  26637880     80.85  23110468   5026624       896

10时47分50秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分51秒     all     20.26      0.00      6.15      0.26      0.26     73.08

10时47分50秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分51秒    375860  32570024     98.86      2104   8419508  26637920     80.85  23128460   5026632       588

10时47分51秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分52秒     all      6.96      0.00      6.70      0.26      0.26     85.82

10时47分51秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分52秒    373628  32572256     98.87      2104   8419632  26637880     80.85  23128728   5026748       524

10时47分52秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分53秒     all      5.34      0.00      5.34      0.00      0.25     89.06

10时47分52秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分53秒    373060  32572824     98.87      2104   8419648  26637536     80.85  23128816   5026752       516

10时47分53秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分54秒     all      6.39      0.00      5.88      0.51      0.26     86.96

10时47分53秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分54秒    373308  32572576     98.87      2104   8419720  26637880     80.85  23128880   5026776       536

10时47分54秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分55秒     all      5.66      0.00      7.46      0.26      0.26     86.38

10时47分54秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分55秒    371752  32574132     98.87      2104   8420048  26637880     80.85  23130136   5027084       548

10时47分55秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分56秒     all     24.43      0.00      6.11      0.00      0.00     69.47

10时47分55秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分56秒    360040  32585844     98.91      2104   8420180  26637880     80.85  23141412   5027200       620

10时47分56秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分57秒     all      5.37      0.00      6.14      0.26      0.26     87.98

10时47分56秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分57秒    360736  32585148     98.91      2104   8420224  26637096     80.85  23140688   5027196       608

10时47分57秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分58秒     all      6.94      0.00      6.68      0.00      0.00     86.38

10时47分57秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分58秒    358332  32587552     98.91      2104   8420348  26637880     80.85  23141664   5027232       632

10时47分58秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时47分59秒     all      4.33      0.00      5.60      0.00      0.00     90.08

10时47分58秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时47分59秒    360400  32585484     98.91      2104   8420360  26637880     80.85  23137792   5027136       644

10时47分59秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时48分00秒     all      6.94      0.00      6.68      0.26      0.26     85.86

10时47分59秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时48分00秒    381180  32564704     98.84      2104   8420444  26638000     80.85  23117732   5027172       672

10时48分00秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时48分01秒     all     21.65      0.00      9.02      0.00      0.00     69.33

10时48分00秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时48分01秒    395480  32550404     98.80      2104   8420596  26638000     80.85  23102328   5027292       708

10时48分01秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时48分02秒     all      8.74      0.00      6.43      0.00      0.00     84.83

10时48分01秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时48分02秒    394228  32551656     98.80      2104   8420664  26637144     80.85  23102604   5027344       724

10时48分02秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时48分03秒     all      5.91      0.00      5.40      0.00      0.26     88.43

10时48分02秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时48分03秒    393872  32552012     98.80      2104   8420680  26637916     80.85  23102540   5027564       752

10时48分03秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时48分04秒     all      5.87      0.00      6.38      0.00      0.00     87.76

10时48分03秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时48分04秒    392808  32553076     98.81      2104   8420788  26637916     80.85  23102716   5027448       760

10时48分04秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时48分05秒     all      4.86      0.00      5.63      0.26      0.00     89.26

10时48分04秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时48分05秒    393800  32552084     98.80      2104   8420816  26637916     80.85  23102608   5027456       764

10时48分05秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
10时48分06秒     all     10.69      0.00      7.12      0.00      0.25     81.93

10时48分05秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
10时48分06秒    392592  32553292     98.81      2104   8420852  26637132     80.85  23102784   5027480       768

平均时间:     CPU     %user     %nice   %system   %iowait    %steal     %idle
平均时间:     all      9.20      0.00      6.48      0.10      0.13     84.09

平均时间: kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
平均时间:    381404  32564480     98.84      2104   8420093  26637730     80.85  23119141   5027022       694
特殊说明:
上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取全部资料 ❤