sar
是一个强大的系统活动报告工具,在 Linux 系统中可以用来收集和分析系统的各种运行状况信息。它提供了丰富的统计指标,包括 CPU 使用率、内存使用情况、网络 I/O 操作等。
在大多数基于 Debian 的发行版(如 Ubuntu)上,可以通过以下命令安装 sysstat
包,其中包含 sar
命令:
sudo apt-get update
sudo apt-get install sysstat
对于基于 Red Hat 的系统(如 CentOS、Fedora),则可以使用如下命令进行安装:
sudo yum install sysstat
sar
可以按不同频率和时间范围来收集数据。常见的收集方法有以下几种:
通过 -n
参数可以指定监控的网络设备,如 -n all
表示监控所有网络设备;若不加参数,则默认收集 CPU、内存等信息。
sar -u # 监控CPU使用率
sar -r # 监控内存使用情况
执行以上命令后,默认每隔 1 分钟会自动记录一次数据。若需自定义间隔和时间长度,可以添加相应参数:
sar -u 5 20 # 每隔5秒收集一次数据,共收集20次
如果需要查看历史数据,则可以在实时监控结束后使用 -f
参数指定历史日志文件进行分析。
首先需要配置 sysstat
的定时任务来记录相关指标:
# 设置sar的收集频率和保存位置
sudo bash -c "echo '15 2 * * * /usr/lib/sa/sa1 1 1' > /etc/cron.d/sysstat"
这将每15分钟生成一次包含CPU、内存等信息的日志文件,存储在 /var/log/sa/
目录下。
sar
还提供了丰富的参数来定制输出内容和格式。例如:
-d
:监控磁盘 I/O 操作-n dev
:查看网络设备的统计信息-r
:显示内存使用情况–o
:指定输出文件或标准输出示例命令如下:
sar -d 5 20 # 监控磁盘 I/O,每隔5秒收集一次数据,共收集20次
可以通过组合多个参数来同时查看多种信息,例如以下命令将同时显示CPU使用率、内存使用情况和网络流量:
sar -u -r -n DEV 5 10
通过 sar
命令可以方便地收集系统的各种运行状况数据。掌握其基本用法后,用户可以根据实际需求调整参数以获取所需的信息。对于系统管理员而言,定期使用 sar
监控系统状态是十分必要的,能够帮助及时发现和解决问题。