Linux命令扫盲 之 sar

今天在读《大规模Web服务开发技术》一书的时候,书中提到了sar这个命令,感觉很有用,有必要整理学习一下。(对于一位Linux初学者,不能放过任何一个学习机会 :P)

打开自己的CentOS,敲入“sar”,表示很失望:

[[email protected] ~]# sar 
bash: sar: command not found

竟然没有安装,不过还好linux下安装还是非常方便的。

[[email protected] ~]# yum install sysstat   
Loaded plugins: fastestmirror 
Loading mirror speeds from cached hostfile 
* base: mirrors.grandcloud.cn 
* extras: mirrors.grandcloud.cn 
* updates: mirrors.grandcloud.cn 
addons                                                   | 1.9 kB     00:00     
base                                                     | 1.1 kB     00:00     
extras                                                   | 2.1 kB     00:00     
updates                                                  | 1.9 kB     00:00     
updates/primary_db                                       | 255 kB     00:01     
Setting up Install Process 
Resolving Dependencies 
--> Running transaction check 
---> Package sysstat.i386 0:7.0.2-11.el5 set to be updated 
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================ 
Package           Arch           Version                  Repository      Size 
================================================================================ 
Installing: 
sysstat           i386           7.0.2-11.el5             base           182 k

Transaction Summary 
================================================================================ 
Install       1 Package(s) 
Upgrade       0 Package(s)

Total download size: 182 k 
Is this ok [y/N]: y 
Downloading Packages: 
sysstat-7.0.2-11.el5.i386.rpm                            | 182 kB     00:01     
Running rpm_check_debug 
Running Transaction Test 
Finished Transaction Test 
Transaction Test Succeeded 
Running Transaction 
  Installing     : sysstat                                                  1/1

Installed: 
  sysstat.i386 0:7.0.2-11.el5

Complete!

注:Sar是后台进程sadc的前端显示工具,安装名为“sysstat”的包后,sadc就会自动从内核收集报告并保存。

下面对sar的一般用法进行总结,以备忘之。

sar –u  查看CPU使用率

[[email protected] ~]# sar -u 
Linux 2.6.18-194.26.1.el5 (localhost)   2012年04月29日

09时39分42秒       LINUX RESTART

09时40分01秒       CPU     %user     %nice   %system   %iowait    %steal     %idle 
09时50分01秒       all         0.14      0.00          0.58          0.12         0.00       99.15 
10时00分01秒       all         0.06      0.00          0.50          0.16         0.00       99.27 
10时10分01秒       all         0.11      0.06          0.95          2.58         0.00       96.30 
10时20分01秒       all         0.12      0.19          0.82          1.41         0.00       97.46 
10时30分01秒       all         0.14      0.00          0.54          0.12         0.00       99.20 
10时40分01秒       all         0.15      0.00          0.54          0.16         0.00       99.15 
Average:              all         0.12      0.04          0.65          0.76         0.00       98.43

这里:

%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 查看平均负荷

[[email protected] ~]# sar -q 
Linux 2.6.18-194.26.1.el5 (localhost)   2012年04月29日

09时39分42秒       LINUX RESTART

09时40分01秒   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   
09时50分01秒         0       152          0.00      0.02      0.05 
10时00分01秒         0       152          0.00      0.00      0.00 
10时10分01秒         0       156          0.39      0.09      0.03 
10时20分01秒         0       151          0.00      0.03      0.01 
10时30分01秒         0       151          0.00      0.00      0.00 
10时40分01秒         0       151          0.00      0.00      0.00 
10时50分01秒         0       151          0.00      0.00      0.00 
Average:                0       152          0.06      0.02      0.01

runq-sz:   运行队列的长度(等待运行的进程数)                                      
plist-sz:   进程列表中进程(processes)和线程(threads)的数量                     
ldavg-1:   最后1分钟的系统平均负载(System load average)                          
ldavg-5:   过去5分钟的系统平均负载                                                 
ldavg-15: 过去15分钟的系统平均负载

sar –r 查看内存使用情况

[[email protected] ~]# sar -r 
Linux 2.6.18-194.26.1.el5 (localhost)   2012年04月29日

09时39分42秒       LINUX RESTART

09时40分01秒 kbmemfree kbmemused  %memused kbbuffers  kbcached kbswpfree kbswpused  %swpused  kbswpcad 
09时50分01秒    481572       553492           53.47     35592         384508   2097144         0                 0.00           0 
10时00分01秒    480960       554104           53.53     36032         384512   2097144         0                 0.00           0 
10时10分01秒    404952       630112           60.88     77764         399432   2097144         0                 0.00           0 
10时20分01秒    375824       659240           63.69     87356         410892   2097144         0                 0.00           0 
10时30分01秒    371860       663204           64.07     87756         411064   2097144         0                 0.00           0 

kbmemfree:空闲物理内存量;

kbmemused:使用中的物理内存量;

%memused:物理内存量使用率;

kbbuffers:内核中作为缓冲区使用的物理内存容量;

kbcacheed:内核中作为缓存使用的物理内存容量;

kbswpfree:交换区的空闲容量;

kbswpused:使用中的交换区容量;

sar –W 查看页面交换发生状况

[[email protected] ~]# sar -W

14时30分01秒  pswpin/s pswpout/s 
14时40分01秒      0.00      0.00 
14时50分01秒      0.00      0.00 
15时00分01秒      0.00      0.00 
Average:         0.00      0.00

sar –b 查看I/O和传送速率的统计信息

[[email protected] ~]# sar -b 1 5 
Linux 2.6.18-194.26.1.el5 (localhost)   2012年04月29日

15时08分18秒       tps      rtps      wtps   bread/s   bwrtn/s 
15时08分19秒      0.00      0.00      0.00      0.00      0.00 
15时08分20秒      0.00      0.00      0.00      0.00      0.00 
15时08分21秒      0.00      0.00      0.00      0.00      0.00 
15时08分22秒     13.27      0.00     13.27      0.00    220.41 
15时08分23秒      0.00      0.00      0.00      0.00      0.00 
Average:         2.66      0.00      2.66      0.00     44.17

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次。

时间: 2024-11-06 23:53:52

Linux命令扫盲 之 sar的相关文章

linux命令扫盲

重命名 rename   rename mnist.scale.t mnist.test mnist.scale.t //重命名 将mnist.scale.t -> mnist.test 第一个参数:被替换掉的字符串 第二个参数:替换成的字符串 第三个参数:匹配要替换的文件模式 --------------------------------------------------------------------- 字母的替换rename "s/AA/aa/" *  //把文件名

0.1 使用w查看系统负载 - 10.2 vmstat命令 - 10.3 top命令 - 10.4 sar命令 - 10.5 nload命令

- 10.1 使用w查看系统负载 - 10.2 vmstat命令 - 10.3 top命令 - 10.4 sar命令 - 10.5 nload命令 # 10.1 使用w查看系统负载 ![mark](http://oqxf7c508.bkt.clouddn.com/blog/20170829/230935727.png?imageslim) - w命令 ``` [[email protected] ~]# w  23:10:04 up  2:17,  2 users,  load average:

十年linux命令总结

十年linux命令总结 本文链接: http://codingstandards.iteye.com/blog/786653 关于命令类型划分 本表中列出了我穷尽了我所有的记忆整理出来的Linux命令,其中关于外部命令.关键字或内建命令的划分,不一定正确.有很多命令,既是内建命令也 可能是外部命令,为啥?Bash为了更高效率的执行命令和脚本,把很多外部命令以内建命令的方式实现了.我们使用type这个命令就可以知道一个命令的类 型了,如下所示: [[email protected] ~]# typ

Linux 系统性能分析工具sar一

sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情况.磁盘I/O.CPU效率.内存使用状况.进程活动及IPC有关的活动等.本文主要以CentOS 6.3 x64系统为例,介绍sar命令. sar命令常用格式 sar [options] [-A] [-o file] t [n] 其中: t为采样间隔,n为采样次数,默认值是1: -o file表示将命

《Linux命令应用大词典》一书,讲述729个命令,1935个例子

<Linux命令应用大词典>涵盖了Linux系统常用的命令,内容涉及基础入门.系统管理.网络管理.网络安全.服务器配置和程序编译等多方面,共计729个命令,1935个例子,内容非常全面.每一个命令都讲述了它的功能描述.命令语法.选项含义和命令实例,内容清晰明了,正所谓一书在手,万事不愁. <Linux命令应用大词典>可以作为读者学习Linux系统的参考书.案头书,遇到不懂的命令或命令选项一查即可:适合Linux爱好者.Linux系统管理工程师.培训机构教师和学生以及高等院校计算机专

28 个必备的 Linux 命令行工具

28 个必备的 Linux 命令行工具 dstat& sariostat, vmstat, ifstat and much more in one.slurm网络流量图形化工具vim&emacs这个没人不知道吧~screen, dtach,tmux, byobu保持你的终端连接活跃.multitail在不同的窗口查看日志文件.t... dstat & sar iostat, vmstat, ifstat and much more in one. slurm 网络流量图形化工具 v

帮你解决系统性能问题的Linux命令

许多系统管理员在遇到性能问题时常简单化处理,依靠硬件的更新换代,更大的内存和更强的CPU来解决问题,事实上,利用一些简单的Linux命令,可以发现许多管理主机的细节问题并且能迅速而简单地解决性能问题.下面为大家一一介绍. 一.top 对许多管理员来说,最新学会的就是TOP命令,它可以显示出当前运行的所有内核任务,并且提供了一些主机状态的统计报告.默认地,TOP命令每隔五分钟自动更新一次这个数据(这个更新间隔是可设置的). TOP命令的功能丰富到令人难以置信(估计很少有人使用过一半以上的功能).一

七周一次课(1月22日) 10.1 使用w查看系统负载 10.2 vmstat命令 10.3 top命令 10.4 sar命令 10.5 nload命令

七周一次课(1月22日)10.1 使用w查看系统负载10.2 vmstat命令10.3 top命令10.4 sar命令10.5 nload命令 ==================================================================================================================================================================================

19、Linux命令对服务器内存进行监控

监控Linux 服务器内存 国际惯例,我们要知道什么是服务器的内存,内存有哪些作用.这里就不做过多介绍,Linux性能监控需要我们对底层要有一定的理解.下面我将会列出我常用的监控内存的工具. vmstat vmstat显示关于进程,内存,页,块I/O,traps和CPU的信息.vmstat既可以展示平均值,也可以是实时数据.通过提供采样频率和采样时间就可以开启vmstat的采样模式. 参数解释: 进程 r:等待执行时间的进程数 b:在不可中断睡眠中的进程数 内存 swpd:已使用的虚拟内存量 f