A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
-bash: sar: command not found #Debian apt-get install sysstat #Ubuntu apt-get install sysstat sudo vi /etc/default/sysstat 修改 ENABLED=false 为 ENABLED=true #重启服务 sudo service sysstat restart #Alpine apk add sysstat #Arch Linux pacman -S sysstat #Kali Linux apt-get install sysstat #CentOS yum install sysstat systemctl start sysstat systemctl enable sysstat #Fedora dnf install sysstat #OS X brew install sysstat #Raspbian apt-get install sysstat #Docker docker run cmd.cat/sar sar
sar 命令是 Linux 下系统运行状态统计工具,它将指定的操作系统状态计数器显示到标准输出设备。sar 工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态。它的特点是可以连续对系统取样,获得大量的取样数据。取样数据和分析的结果都可以存入文件,使用它时消耗的系统资源很小。
sar -[ options ] time_interval number_of_tines_to_display
-A 汇总所有的报告 -a 报告文件读写使用情况 -B 报告附加的缓存的使用情况 -b 报告缓存的使用情况 -c 报告系统调用的使用情况 -d 报告磁盘的使用情况 -g 报告串口的使用情况 -h 报告关于buffer使用的统计数据 -m 报告IPC消息队列和信号量的使用情况 -n 报告命名cache的使用情况 -p 报告调页活动的使用情况 -q 报告运行队列和交换队列的平均长度 -R 报告进程的活动情况 -r 报告没有使用的内存页面和硬盘块 -u 报告CPU的利用率 -v 报告进程、i节点、文件和锁表状态 -w 报告系统交换活动状况 -y 报告TTY设备活动状况
间隔时间:每次报告的间隔时间(秒); 次数:显示报告的次数。
#察看内存和交换空间的使用率 $ sar -r Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU) 08:58:03 AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 08:58:05 AM 64624324 1184156 1.80 49892 430760 1056892 1.61 452264 228332 40 08:58:07 AM 64624092 1184388 1.80 49892 430772 1056892 1.61 452268 228344 56 08:58:09 AM 64624076 1184404 1.80 49892 430788 1056892 1.61 452284 228344 72 Average: 64624164 1184316 1.80 49892 430773 1056892 1.61 452272 228340 56 --------------- kbmemfree:空闲物理内存量; kbmemused:使用中的物理内存量; %memused:物理内存量使用率; kbbuffers:内核中作为缓冲区使用的物理内存容量; kbcacheed:内核中作为缓存使用的物理内存容量; kbswpfree:交换区的空闲容量; kbswpused:使用中的交换区容量; kbmemfree与kbmemused字段分别显示内存的未使用与已使用空间,后面跟着的是已使用空间的百分比(%memused字段)。 kbbuffers与kbcached字段分别显示缓冲区与系统全域的数据存取量,单位为KB。
#观察系统部件10分钟,并对数据进行排序 [root@Test /home/commandnotfound] $ sar -o temp 60 10 Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU) 12:23:38 PM CPU %user %nice %system %iowait %steal %idle 12:24:38 PM all 0.03 0.00 0.02 0.00 0.00 99.95 Average: all 0.03 0.00 0.02 0.00 0.00 99.95
#sar –u 查看CPU使用率 [root@Test /home/commandnotfound] $ sar -u Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU) 08:58:03 AM CPU %user %nice %system %iowait %steal %idle 08:58:05 AM all 0.00 0.00 0.03 0.00 0.00 99.97 08:58:07 AM all 0.03 0.00 0.00 0.00 0.00 99.97 08:58:09 AM all 0.00 0.00 0.03 0.00 0.00 99.97 Average: all 0.01 0.00 0.02 0.00 0.00 99.97 #sar –q 查看平均负荷 $ sar -q Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU) 08:58:03 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked 08:58:05 AM 0 378 0.04 0.21 2.23 0 08:58:07 AM 0 378 0.04 0.21 2.21 0 08:58:09 AM 0 378 0.04 0.21 2.21 0 Average: 0 378 0.04 0.21 2.22 0 #sar –W 查看页面交换发生状况 $ sar -W Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU) 08:58:03 AM pswpin/s pswpout/s 08:58:05 AM 0.00 0.00 08:58:07 AM 0.00 0.00 08:58:09 AM 0.00 0.00 Average: 0.00 0.00 #sar –q 查看平均负荷 $ sar -q Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU) 08:58:03 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked 08:58:05 AM 0 378 0.04 0.21 2.23 0 08:58:07 AM 0 378 0.04 0.21 2.21 0 08:58:09 AM 0 378 0.04 0.21 2.21 0 Average: 0 378 0.04 0.21 2.22 0 #sar –b 查看I/O和传送速率的统计信息 $ sar -b 1 5 Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU) 12:36:12 PM tps rtps wtps bread/s bwrtn/s 12:36:13 PM 0.00 0.00 0.00 0.00 0.00 12:36:14 PM 0.00 0.00 0.00 0.00 0.00 12:36:15 PM 0.00 0.00 0.00 0.00 0.00 12:36:16 PM 0.00 0.00 0.00 0.00 0.00 12:36:17 PM 0.00 0.00 0.00 0.00 0.00 Average: 0.00 0.00 0.00 0.00 0.00 -------------- tps: 每秒钟物理设备的 I/O 传输总量 rtps: 每秒钟从物理设备读入的数据总量 wtps: 每秒钟向物理设备写入的数据总量 bread/s: 每秒钟从物理设备读入的数据量,单位为 块/s bwrtn/s: 每秒钟向物理设备写入的数据量,单位为 块/s
其他还有:
sar –c 每秒钟创建的进程数 sar -n DEV 输出网络设备状态的统计信息
安装首次执行#sar 命令时会提示如下错误。
Cannot open /var/log/sa/sa**: No such file or directory.. 星号值一般是当天的日期。这个错误是由于没有创建那个文件,可是使用参数-o 让其生成。
$ sar -o 2 3 这样/var/log/sa/目录下就会有文件了。