Linux sar 命令详解
简介
sar(System Activity Reporter)是 Linux 下强大的系统性能分析工具,它可以收集、报告和保存系统的活动信息,包括 CPU、内存、磁盘 I/O、网络等。sar 命令通常需要安装 sysstat 软件包。
语法
sar [选项] [时间间隔] [次数]
常用选项:
| 选项 | 说明 |
|---|---|
-n DEV |
显示网络接口统计信息(DEV 表示网络设备) |
-n EDEV |
显示网络设备错误统计 |
-n SOCK |
显示 socket 统计 |
-n TCP |
显示 TCP 统计 |
-n UDP |
显示 UDP 统计 |
-u |
显示 CPU 使用情况 |
-r |
显示内存使用情况 |
-b |
显示磁盘 I/O 统计 |
-d |
显示块设备活动 |
-q |
显示队列长度和负载平均值 |
-B |
显示分页统计 |
-W |
显示交换统计 |
-P ALL |
显示每个 CPU 的使用情况 |
-o 文件 |
将结果保存到文件(二进制格式) |
-f 文件 |
从指定文件读取并显示历史数据 |
若不指定时间间隔和次数,sar 将显示自启动以来累积的统计信息(需要系统已配置数据收集)。通常配合 -n DEV 等选项查看实时统计。
常用用法示例
-
显示网络接口统计(实时)
sar -n DEV 1 3
每隔 1 秒显示一次网络接口统计,共显示 3 次。
-
查看 CPU 使用情况
sar -u 2 5 -
查看内存使用情况
sar -r 1 3 -
从历史数据文件中查看
sar -f /var/log/sysstat/sa28 # 查看某天的历史记录(具体文件路径可能因发行版而异)
sar -n DEV 输出字段详解
当使用 sar -n DEV 时,会输出每个网络接口的详细统计信息。字段含义如下:
| 字段 | 说明 |
|---|---|
IFACE |
网络接口名称(如 eth0、ens33、lo) |
rxpck/s |
每秒接收的数据包数量 |
txpck/s |
每秒发送的数据包数量 |
rxkB/s |
每秒接收的数据量(KB) |
txkB/s |
每秒发送的数据量(KB) |
rxcmp/s |
每秒接收的压缩数据包数量 |
txcmp/s |
每秒发送的压缩数据包数量 |
rxmcst/s |
每秒接收的多播数据包数量 |
这些指标有助于分析网络流量负载,判断是否存在网络瓶颈或异常。

浙公网安备 33010602011771号