sar
(System Activity Reporter)命令是Linux和类Unix操作系统中的一个强大的性能分析工具,主要用于收集和报告系统的各种性能数据,如CPU使用率、内存使用情况、磁盘I/O、网络流量、进程活动等关键性能指标。它可以定期采样系统状态,并以易读的文本形式或二进制格式存储在文件中,以便后续分析。
基本语法:
sar [options] [interval] [count]
options
: 可选参数,用来指定要显示哪些性能指标。例如:-u
:报告CPU使用情况(用户、系统、空闲时间等)。-r
:报告内存使用情况(页入/出、缓冲区、缓存大小等)。-d
:报告磁盘I/O统计。-b
:报告块设备(包括磁盘)的传输速率。-q
:报告系统负载和作业队列长度。-n
:与网络相关的统计(需配合其他子选项)。
interval
: 采样间隔时间(秒),比如若设置为5,则每5秒采集一次数据。count
: 采样次数,如果不指定则默认只采样一次;如果指定了,则会按照指定的间隔连续采样相应次数。
额外功能:
-A
:显示所有活动的报告(等同于同时指定多个常见的选项)。-o file
:将结果以二进制格式保存到指定的文件中,便于以后通过sar
命令再次读取和分析。
示例用法:
实时查看CPU使用情况:
sar -u 5
这将会每隔5秒钟显示一次CPU使用率。
将一天内每十分钟的系统活动信息记录到文件中:
sar -A -o /var/log/sar.log 10 144
此命令会在接下来的24小时内每10分钟采集一次全部系统活动,并将其保存至
/var/log/sar.log
文件。后期读取已保存的sar数据:
sar -f /var/log/sar.log
请注意,为了使用sar
命令,通常需要先安装sysstat
软件包。此外,不同的Linux发行版可能支持的选项或格式略有差异,因此在实际操作前应查阅对应版本的手册页或官方文档。