Linux命令扫盲 之 sar

 

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

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

[root@localhost ~]# sar 
bash: sar: command not found

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

[root@localhost ~]# 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命令会报如下错误:“无法打开 /var/log/sa/sa17: 没有那个文件或目录”。

这里的值17一般是当天的日期(我在2015年8月17日测试,所以这里是17)。这个错误是由于没有创建那个文件,可是使用参数-o 让其生成。

1
sar -o 17

这样/var/log/sysstat/目录下就会有文件了。

1、sar -n DEV 查看网卡流量

1
2
3
sar -n DEV 1 5  ## 1秒显示一次,总共显示5次
 
sar -n DEV -f /var/log/sa/sa17  ## -f选项查看有一天的网卡流量历史,后面跟某天对应的文件名

2、sar -q  查看历史负载

3、sar -b  查看磁盘

sar –u  查看CPU使用率

[root@localhost ~]# 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 查看平均负荷

[root@localhost ~]# 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 查看内存使用情况

[root@localhost ~]# 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 查看页面交换发生状况

[root@localhost ~]# 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和传送速率的统计信息

[root@localhost ~]# 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次

Linux服务器性能指标查询命令安装的更多相关文章

  1. 使用Linux服务器来通过网络安装和激活Windows 7 —— 一些基本原理

    使用Linux服务器来通过网络安装和激活Windows 7 -- 一些基本原理 https://www.pufengdu.org/blog/?p=372

  2. 【linux运维】Linux服务器玩转vsftpd安装与配置

    Linux服务器搭建ftp详细教程. 前言 本文,主要以vsftp软件为主进行讲解,版本为3.0.2.以介绍设置虚拟用户.权限验证为主,linux权限知识默认大家都有所了解.vsftpd设置有两种模式 ...

  3. linux服务器管理常用命令

    1.ps命令 (Processes Status) ps这个命令是查看系统进程,ps 是显示瞬间行程的状态,并不动态连续. ==============ps 的参数说明================ ...

  4. Windows远程linux服务器执行shell命令

    一.前言 借用百度百科关于putty的描述:PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连接软件.较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台 ...

  5. Linux服务器---邮件服务postfix安装

    安装postfix postfix是一个快速.易于管理.安全性高的邮件发送服务,可以配合dovecot实现一个完美的邮箱服务器. 1.安装postfix [root@localhost ~]# rpm ...

  6. ssh远程连接linux服务器并执行命令

    详细方法: SSHClient中的方法 参数和参数说明 connect(实现ssh连接和校验) hostname:目标主机地址 port:主机端口 username:校验的用户名 password:登 ...

  7. Java远程连接Linux服务器并执行命令及上传文件

    最近再开发中遇到需要将文件上传到Linux服务器上,至此整理代码笔记. 此种连接方法中有考虑到并发问题,在进行创建FTP连接的时候将每一个连接对象存放至 ThreadLocal<Ftp> ...

  8. 第一次项目上Linux服务器(三:安装Tomcat及相关命令)

    一.下载Tomcat 去官网:http://tomcat.apache.org/ 找到要下载的Tomcat 本人下载的是apache-tomcat-8.5.29.tar.gz,百度云资源链接:链接:h ...

  9. centOS7 mini配置linux服务器(五) 安装和配置tomcat和mysql

    配置java运行环境,少不了服务器这一块,而tomcat在服务器中占据了很大一部分份额,这里就简单记录下tomcat安装步骤. 下载 首先需要下载tomcat7的安装文件,地址如下: http://t ...

随机推荐

  1. VS2010 下编译 cocos2d-x-2.1.4

    在VS2010 下编译 cocos2d-x-2.1.4   首先感谢 cocos2d-x 团队为我们做出这么好的跨平台框架,让我们这些码农省了很多时间,事半功倍. 里沃特最近在编译 win32 版本的 ...

  2. 设置 Ext.data.Store 传参的请求方式

    设置 Ext.data.Store 传参的请求方式 1.extjs 给怎么给panel设背景色 设置bodyStyle:'background:#ffc;padding:10px;', var res ...

  3. 一步一步深入spring(2)-三种方式来实例化bean

    在一步一步深入spring(1)--搭建和测试spring的开发环境中提到了一种实例化bean的方式,也是最基本的使用构造器实例化bean 1.使用构造器实例化bean:这是最简单的方式,Spring ...

  4. create OpenVPN on ubuntu12.04

    ---恢复内容开始--- 最近比较火的有digitalocean  的SSD VPS,配置还不错.每个月5刀,512MB内存,CPU被虚拟过.不是KVM.链接能量也不大. 节点在西雅图,对环太平洋比较 ...

  5. jQuery 1.10.2 and 2.0.3 Released

    t’s nearly Independence Day here in the USA, so we’re delivering something fresh off the grill: jQue ...

  6. 读书笔记:《HTML5开发手册》Web表单

    这是补充HTML5基础知识的第五篇内容,其他为: 一.HTML5-- 新的结构元素 二.HTML5-- figure.time.details.mark 三.HTML5-- details活学活用 四 ...

  7. vue-auto-focus: 控制自动聚焦行为的 vue 指令

    在网页的表单中,经常需要用程序来控制input和textarea的自动聚焦行为.例如我最近做的一个项目,有个装箱出库的流程,input框自动聚焦的流程如下:页面进入时自动聚焦到订单号输入框->订 ...

  8. python基础4

    内容概要: 一.递归 递归就是函数本身调用自己,直到满足指定条件之后一层层退出函数 递归特性: 必须有一个明确的结束条件 每次进入更深一层递归时,问题规模相比上次递归都应有所减少 递归效率不高,递归层 ...

  9. Linux中top和free命令详解(转)

    top:命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最"敏感"的任务列表. 该命令可以按CPU使用.内存使用和执行时间对任务进行排序: 而且该命令的很多特性都可以通 ...

  10. saltstack布署实践 【安装】

    借用链接http://www.cnblogs.com/liuyansheng/p/6094122.html的安装方式,我再同步一下其它操作系统的安装方式,由原Docker官网拷贝 Ubuntu1404 ...