你的位置:首页 > 操作系统

[操作系统]Linux基础命令:sar

sar命令常用格式

sar [options] [-A] [-o file] t [n]

其中:

t为采样间隔,n为采样次数,默认值是1;

-o file表示将命令结果以二进制格式存放在文件中,file 是文件名。

options 为命令行选项,sar命令常用选项如下:

 

-A:所有报告的总和

-u:输出CPU使用情况的统计信息

-v:输出inode、文件和其他内核表的统计信息

-d:输出每一个块设备的活动信息

-r:输出内存和交换空间的统计信息

-b:显示I/O和传送速率的统计信息

-a:文件读写情况

-c:输出进程统计信息,每秒创建的进程数

-R:输出内存页面的统计信息

-y:终端设备活动情况

-w:输出系统交换活动信息

 

敲一敲:

sar –u  查看CPU使用率

hejianping@kk-mc-187:~$ sar -u

 

这里:%user : 用户模式下消耗的CPU时间的比例;%nice:通过nice改变了进程调度优先级的进程,在用户模式下消耗的CPU时间的比例;%system:系统模式下消耗的CPU时间的比例;%iowait:CPU等待磁盘I/O而导致空闲状态消耗时间的比例;%steal:利用Xen等操作系统虚拟化技术时,等待其他虚拟CPU计算占用的时间比例;%idle:CPU没有等待磁盘I/O等的空闲状态消耗的时间比例;注:如果 %iowait 的值过高,表示硬盘存在I/O瓶颈 如果 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量 如果 %idle 的值持续低于 10,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU。 sar –q 查看平均负荷

hejianping@kk-mc-187:~$ sar -q

runq-sz:   运行队列的长度(等待运行的进程数)                                      plist-sz:   进程列表中进程(processes)和线程(threads)的数量                     ldavg-1:   最后1分钟的系统平均负载(System load average)                          ldavg-5:   过去5分钟的系统平均负载                                                 ldavg-15: 过去15分钟的系统平均负载sar –r 查看内存使用情况hejianping@kk-mc-187:~$ sar -r kbmemfree:空闲物理内存量;kbmemused:使用中的物理内存量;%memused:物理内存量使用率;kbbuffers:内核中作为缓冲区使用的物理内存容量;kbcacheed:内核中作为缓存使用的物理内存容量;kbswpfree:交换区的空闲容量;kbswpused:使用中的交换区容量; sar –W 查看页面交换发生状况hejianping@kk-mc-187:~$ sar -W sar –b 查看I/O和传送速率的统计信息hejianping@kk-mc-187:~$ sar -b 1 5

 

tps:     每秒钟物理设备的 I/O 传输总量                    rtps:    每秒钟从物理设备读入的数据总量                  wtps:    每秒钟向物理设备写入的数据总量                  bread/s: 每秒钟从物理设备读入的数据量,单位为 块/s    bwrtn/s: 每秒钟向物理设备写入的数据量,单位为 块/s 其他还有:sar –c   每秒钟创建的进程数sar -n DEV  输出网络设备状态的统计信息注:默认情况是对过去时间段进行数据统计,一般从最近的0:00开始显示。如果想继续查看一天前的报告,可以用-f选项指定保存在/var/log/sa目录下的日志文件中。如果想周期性的查看当前数据可以命令后面加上数字参数,如sar –q 1 3 ,表示:1秒1次,共3次。

要判断系统瓶颈问题,有时需几个 sar 命令选项结合起来

怀疑CPU存在瓶颈,可用 sar -u 和 sar -q 等来查看

怀疑内存存在瓶颈,可用 sar -B、sar -r 和 sar -W 等来查看

怀疑I/O存在瓶颈,可用 sar -b、sar -u 和 sar -d 等来查看