linux下sar命令详解
-
Sar(System Activity Report)命令是Linux系统中一个用于监测系统性能和资源使用情况的实用工具。它能够收集和报告关于系统活动的各种统计数据,如CPU使用率、内存使用情况、磁盘I/O等。通过sar命令,系统管理员可以实时监测系统的性能,并根据收集到的数据进行性能分析和优化。
sar命令通常搭配使用不同的选项和参数,以返回所需的结果。下面对sar命令的常用选项和功能进行详细解析:
1. sar命令的基本用法:
“`
sar [-options] [interval [count]]
“`其中,options为sar命令的各种选项,interval为数据收集的时间间隔(单位为秒),count为数据收集的次数。如果省略interval和count,则sar命令默认会每隔1秒收集一次数据,直到用户手动中断。
2. 常用选项:
– -u:显示CPU使用率的统计数据。
– -r:显示内存使用情况的统计数据。
– -d:显示磁盘I/O的统计数据。
– -n:显示网络活动的统计数据。
– -p:显示进程相关的统计数据。
– -q:显示系统负载的统计数据。3. sar命令输出的统计数据:
– CPU使用率统计数据:包括用户态、系统态、等待I/O、空闲等不同状态下CPU的使用率。
– 内存使用情况统计数据:包括内存总量、使用量、缓冲区和缓存使用量等。
– 磁盘I/O统计数据:包括读/写请求的数量、传输速率、各个磁盘分区的使用情况等。
– 网络活动统计数据:包括网络接口的数据传输量、传输速率等。
– 进程统计数据:包括进程相关的CPU使用率、内存使用情况等。
– 系统负载统计数据:包括CPU平均负载、运行队列长度等。4. sar命令的数据收集和报告:
sar命令会将收集到的数据保存在系统的/var/log/sa目录下的文件中,文件名为saXX,其中XX表示日期。管理员可以使用sar命令的-r、-u、-d等选项结合文件名,从文件中读取历史数据进行分析。5. 示例用法:
– 查看当前系统CPU的使用率:sar -u 1 5
– 查看当前系统内存的使用情况:sar -r 1 5
– 查看当前系统磁盘I/O的情况:sar -d 1 5
– 查看当前网络接口的活动情况:sar -n DEV 1 5总之,sar命令是一个功能强大的系统性能监测工具,通过对系统活动的各种统计数据的收集和分析,管理员可以了解系统的性能状况,及时发现和解决潜在的问题,以提高系统的稳定性和性能。
2年前 -
sar命令是一个实时系统性能监测工具,可以收集和报告Linux系统的各种性能统计数据。它可以帮助系统管理员监测系统的负载、CPU利用率、内存使用情况、磁盘IO等关键指标,从而更好地了解系统的运行状况,并且帮助做出优化和调整的决策。
下面是sar命令的一些详解:
1. sar命令的基本使用格式是sar [选项] [时间间隔] [次数]。时间间隔表示监测的时间间隔,次数表示监测的次数。例如,sar -u 5 3表示每隔5秒监测系统CPU的利用率,共监测3次。
2. sar命令可以监测多种系统性能指标,其中一些常用的选项包括:
– -u:监测CPU利用率
– -r:监测内存使用情况
– -b:监测磁盘IO
– -w:监测系统负载
– -n:监测网络接口
– -p:监测进程使用情况
– -q:监测系统队列情况3. sar命令可以输出结果到控制台,也可以保存到文件中以供稍后分析。使用命令sar -o [文件名]可以将结果保存到文件中,使用sar -f [文件名]可以从文件中读取结果进行分析。
4. sar命令的输出结果是以表格的形式展示的,可以通过一些选项来定制输出结果的格式。例如,使用 sar -P ALL可以显示每个CPU的利用率;使用sar -f [文件名] -s [时间]可以根据指定的起始时间进行分析。
5. sar命令还可以通过结合其他命令来进行更详细的系统性能分析。例如,可以使用sar命令结合top命令来监测系统的CPU使用情况和进程运行情况,从而综合评估系统的性能状况。
总之,sar命令是一个非常有用的系统性能监测工具,可以帮助系统管理员了解系统的运行状况并做出相应的优化和调整。熟练掌握sar命令的使用方法和参数选项,对于实时监测和分析系统性能是非常有帮助的。
2年前 -
一、什么是sar命令
sar是System Activity Reporter的缩写,它是Linux系统性能监控工具之一,用于收集、报告和分析系统活动数据,可以提供有关系统资源使用情况的详细信息,包括CPU使用率、内存使用率、磁盘I/O、网络活动等。二、sar命令的安装
sar命令通常作为sysstat软件包的一部分提供,可以通过以下命令安装:
“`shell
yum install sysstat
“`三、sar命令的常用选项和参数
– -u:显示CPU使用率
– -r:显示内存使用率
– -W:显示平均swapping情况
– -b:显示块设备的活动情况
– -n:显示网络接口的活动情况
– -q:显示运行队列长度和平均负荷
– -S:显示每个CPU核心的活动情况
– -P:显示每个CPU的详细活动情况
– -d:显示磁盘的活动情况
– -w:指定输出间隔时间,默认为1秒
– -s:指定起始时间
– -e:指定结束时间
– -f:指定sar数据文件路径四、sar命令的常见用法
1. 查看CPU的使用率
“`shell
sar -u
“`
输出结果包括以下几个字段:
– %user:用户态CPU使用率
– %nice:用户态nice值高的进程的CPU使用率
– %system:内核态CPU使用率
– %iowait:等待I/O完成的CPU时间比例
– %steal:虚拟机中被其他虚拟机使用的CPU时间比例
– %idle:空闲CPU时间比例2. 查看内存的使用情况
“`shell
sar -r
“`
输出结果包括以下几个字段:
– kbmemfree:可用内存的大小
– kbmemused:已使用内存的大小
– %memused:已使用内存的百分比
– kbbuffers:用作缓冲区的内存大小
– kbcached:用作缓存的内存大小
– kbswpfree:可用交换空间的大小
– kbswpused:已使用交换空间的大小
– %swpused:已使用交换空间的百分比3. 查看磁盘的I/O活动情况
“`shell
sar -b
“`
输出结果包括以下几个字段:
– tps:每秒传输的I/O请求的数量
– rtps:每秒读取的块设备请求的数量
– wtps:每秒写入的块设备请求的数量
– bread/s:每秒读取的块设备数据量
– bwrtn/s:每秒写入的块设备数据量4. 查看网络接口的活动情况
“`shell
sar -n DEV
“`
输出结果包括以下几个字段:
– IFACE:网络接口名
– rxpck/s:每秒接收的数据包数量
– txpck/s:每秒发送的数据包数量
– rxkB/s:每秒接收的数据量(千字节)
– txkB/s:每秒发送的数据量(千字节)
– rxcmp/s:每秒接收的压缩数据包数量
– txcmp/s:每秒发送的压缩数据包数量
– rxmcst/s:每秒多播数据包数量5. 查看运行队列长度和平均负荷
“`shell
sar -q
“`
输出结果包括以下几个字段:
– runq-sz:运行队列的长度
– plist-sz:进程列表的长度
– ldavg-1:1分钟平均负荷
– ldavg-5:5分钟平均负荷
– ldavg-15:15分钟平均负荷五、sar命令的输出解读
sar命令输出的结果需要进行解读,以下是一些常见字段的含义:
– CPU相关字段:
– %user:用户态CPU使用率,用户程序占用CPU的时间比例。
– %nice:用户态nice值较高的进程的CPU使用率。
– %system:内核态CPU使用率,内核程序占用CPU的时间比例。
– %iowait:等待I/O完成的CPU时间比例。
– %steal:虚拟机中被其他虚拟机使用的CPU时间比例。
– %idle:空闲CPU时间比例。
– 内存相关字段:
– kbmemfree:可用内存的大小。
– kbmemused:已使用内存的大小。
– %memused:已使用内存的百分比。
– kbbuffers:用作缓冲区的内存大小。
– kbcached:用作缓存的内存大小。
– kbswpfree:可用交换空间的大小。
– kbswpused:已使用交换空间的大小。
– %swpused:已使用交换空间的百分比。
– 磁盘I/O相关字段:
– tps:每秒传输的I/O请求的数量。
– rtps:每秒读取的块设备请求的数量。
– wtps:每秒写入的块设备请求的数量。
– bread/s:每秒读取的块设备数据量。
– bwrtn/s:每秒写入的块设备数据量。
– 网络相关字段:
– IFACE:网络接口名。
– rxpck/s:每秒接收的数据包数量。
– txpck/s:每秒发送的数据包数量。
– rxkB/s:每秒接收的数据量(千字节)。
– txkB/s:每秒发送的数据量(千字节)。
– rxcmp/s:每秒接收的压缩数据包数量。
– txcmp/s:每秒发送的压缩数据包数量。
– rxmcst/s:每秒多播数据包数量。六、将sar命令输出保存到文件
可以使用以下命令将sar命令的输出保存到文件:
“`shell
sar -n DEV 1 5 > output.txt
“`
这个命令会每秒采集一次网络接口的活动情况,共采集5次,并将输出保存到output.txt文件中。七、从sar数据文件中分析数据
sar命令也支持从已经生成的sar数据文件中分析数据,只需要使用-f选项指定数据文件路径即可:
“`shell
sar -n DEV -f /var/log/sa/sa01
“`
这个命令会从/var/log/sa/sa01文件中读取数据并进行分析。总结:
sar命令是一个强大而又实用的Linux系统性能监控工具,可以帮助我们分析系统的活动数据。通过运行sar命令,我们可以获取关于CPU使用率、内存使用率、磁盘I/O、网络活动等方面的详细信息。同时,我们还可以将sar命令的输出保存到文件中,方便后续分析。2年前