这篇文章主要介绍一些Linux性能检测相关的命令。 vmstat和iostat的两个命令可以运行在主流的Linux/Unix操作系统上。

如果vmstat和iostat命令不能再你的电脑上运行,请安装sysstat包。因为vmstat和iostat命令是集成在SYSSTAT(系统监视工具)包里面。 iostat命令主要生成CPU和所有设备统计报告。你可以下载并安装SYSSTAT,如果使用源代码tar包安装,从这里下载SYSSTAT,但我们建议你使用yum命令安装。

Linux下安装Sysstat

  1. # yum -y install sysstat

vmstat:搜集内存、进程,paging等信息

iostat:中央处理单元(CPU)的统计数据和设备、分区输入/输出统计信息。

在Linux下6个vmstat命令例子:

1、列出活动和非活动的内存

在下面的示例中,有6列。每列的详细介绍在vmstat的man手册都会有详细解释。最显著的字段是memory下的free,swap下的si以及so。

  1. [root@tecmint ~]# vmstat -a
  2. procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
  3. r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
  4. 1  0      0 810420  97380  70628    0    0   115     4   89   79  1  6 90  3  0

A、free : 空闲的空间。

B、si : 从磁盘到Swap的速度是千字节每秒。

C、so :从Swape到磁盘的速度是千字节每秒。

注意:如果您运行vmstat不带参数,它缺省会显示汇总报告。

2、每隔’X'秒执行vmstat一次(N为执行的次数)

使用此命令,执行的vmstat每隔2秒钟执行一次,执行6次后自动停止。

  1. [root@tecmint ~]# vmstat 2 6
  2. procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
  3. r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
  4. 0  0      0 810420  22064 101368    0    0    56     3   50   57  0  3 95  2  0
  5. 0  0      0 810412  22064 101368    0    0     0     0   16   35  0  0 100  0  0
  6. 0  0      0 810412  22064 101368    0    0     0     0   14   35  0  0 100  0  0
  7. 0  0      0 810412  22064 101368    0    0     0     0   17   38  0  0 100  0  0
  8. 0  0      0 810412  22064 101368    0    0     0     0   17   35  0  0 100  0  0
  9. 0  0      0 810412  22064 101368    0    0     0     0   18   36  0  1 100  0  0

3、vmstat命令带时间戳

vmstat命令使用-t参数显示时间戳,如下图所示的每一行都会记录。

  1. [tecmint@tecmint ~]$ vmstat -t 1 5
  2. procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ ---timestamp---
  3. r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
  4. 0  0      0 632028  24992 192244    0    0    70     5   55   78  1  3 95  1  0        2012-09-02 14:57:18 IST
  5. 1  0      0 632028  24992 192244    0    0     0     0  171  514  1  5 94  0  0        2012-09-02 14:57:19 IST
  6. 1  0      0 631904  24992 192244    0    0     0     0  195  600  0  5 95  0  0        2012-09-02 14:57:20 IST
  7. 0  0      0 631780  24992 192244    0    0     0     0  156  524  0  5 95  0  0        2012-09-02 14:57:21 IST
  8. 1  0      0 631656  24992 192244    0    0     0     0  189  592  0  5 95  0  0        2012-09-02 14:57:22 IST

4、各种计数器的统计信息

用vmstat -s参数来显示各种事件计数器和内存统计信息。

  1. [tecmint@tecmint ~]$ vmstat -s
  2. 1030800  total memory
  3. 524656  used memory
  4. 277784  active memory
  5. 185920  inactive memory
  6. 506144  free memory
  7. 26864  buffer memory
  8. 310104  swap cache
  9. 2064376  total swap
  10. 0  used swap
  11. 2064376  free swap
  12. 4539 non-nice user cpu ticks
  13. 0 nice user cpu ticks
  14. 11569 system cpu ticks
  15. 329608 idle cpu ticks
  16. 5012 IO-wait cpu ticks
  17. 79 IRQ cpu ticks
  18. 74 softirq cpu ticks
  19. 0 stolen cpu ticks
  20. 336038 pages paged in
  21. 67945 pages paged out
  22. 0 pages swapped in
  23. 0 pages swapped out
  24. 258526 interrupts
  25. 392439 CPU context switches
  26. 1346574857 boot time
  27. 2309 forks

5、磁盘统计

用vmstat的-d选项显示所有磁盘的统计数据。

  1. [tecmint@tecmint ~]$ vmstat -d
  2. disk- ------------reads------------ ------------writes----------- -----IO------
  3. total merged sectors      ms  total merged sectors      ms    cur    sec
  4. ram0       0      0       0       0      0      0       0       0      0      0
  5. ram1       0      0       0       0      0      0       0       0      0      0
  6. ram2       0      0       0       0      0      0       0       0      0      0
  7. ram3       0      0       0       0      0      0       0       0      0      0
  8. ram4       0      0       0       0      0      0       0       0      0      0
  9. ram5       0      0       0       0      0      0       0       0      0      0
  10. ram6       0      0       0       0      0      0       0       0      0      0
  11. ram7       0      0       0       0      0      0       0       0      0      0
  12. ram8       0      0       0       0      0      0       0       0      0      0
  13. ram9       0      0       0       0      0      0       0       0      0      0
  14. ram10      0      0       0       0      0      0       0       0      0      0
  15. ram11      0      0       0       0      0      0       0       0      0      0
  16. ram12      0      0       0       0      0      0       0       0      0      0
  17. ram13      0      0       0       0      0      0       0       0      0      0
  18. ram14      0      0       0       0      0      0       0       0      0      0
  19. ram15      0      0       0       0      0      0       0       0      0      0
  20. loop0      0      0       0       0      0      0       0       0      0      0
  21. loop1      0      0       0       0      0      0       0       0      0      0
  22. loop2      0      0       0       0      0      0       0       0      0      0
  23. loop3      0      0       0       0      0      0       0       0      0      0
  24. loop4      0      0       0       0      0      0       0       0      0      0
  25. loop5      0      0       0       0      0      0       0       0      0      0
  26. loop6      0      0       0       0      0      0       0       0      0      0
  27. loop7      0      0       0       0      0      0       0       0      0      0
  28. sr0        0      0       0       0      0      0       0       0      0      0
  29. sda     7712   5145  668732  409619   3282  28884  257402  644566      0    126
  30. dm-0   11578      0  659242 1113017  32163      0  257384 8460026      0    126
  31. dm-1     324      0    2592    3845      0      0       0       0      0      2

6、统计显示以MB为单位

vmstat以兆为单位显示,用参数-S和M(大写)。参数-S对应的值可以是k, K, m or M (默认为 kb)

  1. [root@tecmint ~]# vmstat -S M 1 5
  2. procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
  3. r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
  4. 0  0      0    346     53    476    0    0    95     8   42   55  0  2 96  2  0
  5. 0  0      0    346     53    476    0    0     0     0   12   15  0  0 100  0  0
  6. 0  0      0    346     53    476    0    0     0     0   32   62  0  0 100  0  0
  7. 0  0      0    346     53    476    0    0     0     0   15   13  0  0 100  0  0
  8. 0  0      0    346     53    476    0    0     0     0   34   61  0  1 99  0  0

在Linux下6个iostat命令例子

7、显示CPU和I/O统计信息

iostat的不带参数的显示CPU和I/ O的所有分区的统计信息,如下图所示。

  1. [root@tecmint ~]# iostat
  2. Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)
  3. avg-cpu:  %user   %nice %system %iowait  %steal   %idle
  4. 0.12    0.01    1.54    2.08    0.00   96.24
  5. Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
  6. sda               3.59       161.02        13.48    1086002      90882
  7. dm-0              5.76       159.71        13.47    1077154      90864
  8. dm-1              0.05         0.38         0.00       2576          0

8、只显示CPU的统计信息

用iostat的-c参数,如下图所示只显示CPU统计信息。

  1. [root@tecmint ~]# iostat -c
  2. Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)
  3. avg-cpu:  %user   %nice %system %iowait  %steal   %idle
  4. 0.12    0.01    1.47    1.98    0.00   96.42

9、只显示磁盘的I/O统计

用iostat的-D参数显示只有I/O的所有分区的统计数据。

  1. [root@tecmint ~]# iostat -d
  2. Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)
  3. Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
  4. sda               3.35       149.81        12.66    1086002      91746
  5. dm-0              5.37       148.59        12.65    1077154      91728
  6. dm-1              0.04         0.36         0.00       2576          0

10、只显示单一设备的I/O统计信息。

默认情况下,它会显示所有分区的统计信息,使用-p和设备名称参数只显示只显示磁盘用于特定设备的I/O统计信息。

  1. [root@tecmint ~]# iostat -p sda
  2. Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)
  3. avg-cpu:  %user   %nice %system %iowait  %steal   %idle
  4. 0.11    0.01    1.44    1.92    0.00   96.52
  5. Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
  6. sda               3.32       148.52        12.55    1086002      91770
  7. sda1              0.07         0.56         0.00       4120         18
  8. sda2              3.22       147.79        12.55    1080650      91752

11、显示LVM统计

使用-n(大写)参数只显示LVM的统计数据,如图所示。

  1. [root@tecmint ~]# iostat -N
  2. Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)
  3. avg-cpu:  %user   %nice %system %iowait  %steal   %idle
  4. 0.11    0.01    1.39    1.85    0.00   96.64
  5. Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
  6. sda               3.20       142.84        12.16    1086002      92466
  7. vg_tecmint-lv_root     5.13       141.68        12.16    1077154      92448
  8. vg_tecmint-lv_swap     0.04         0.34         0.00       2576          0

12、iostat的版本。

与-V(大写)参数显示iostat的版本,如下所示。

  1. [root@tecmint ~]# iostat -V
  2. sysstat version 9.0.4

(C) Sebastien Godard (sysstat  orange.fr)

注:vmstat和iostat的包含列和标志可能不能详细解释。

系统性能监控之vmstat和iostat命令的更多相关文章

  1. 使用vmstat和iostat命令进行Linux性能监控【转】

    转自:https://linux.cn/article-4024-1.html 这是我们正在进行的Linux命令和性能监控系列的一部分.vmstat和iostat两个命令都适用于所有主要的类unix系 ...

  2. vmstat和iostat命令进行Linux性能监控

    这是我们正在进行的Linux命令和性能监控系列的一部分.vmstat和iostat两个命令都适用于所有主要的类unix系统(Linux/unix/FreeBSD/Solaris). 如果vmstat和 ...

  3. Linux系统性能监控之6个vmstat和6个iostat命令

    这篇文章主要介绍一些Linux性能检测相关的命令. vmstat和iostat的两个命令可以运行在主流的Linux/Unix操作系统上. 如果vmstat和iostat命令不能再你的电脑上运行,请安装 ...

  4. Linux 系统性能监控命令详解

    Linux 系统性能监控命令详解 CPU MEMORY IO NETWORK LINUX进程内存占用查看方法 系统负载过重时往往会引起其它子系统的问题,比如:->大量的读入内存的IO请求(pag ...

  5. vmstat/top/iostat/route/sar 常用命令

    [vmstat]Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存.进程.CPU活动进行监控.是对系统的整体情况进行统计,不足之处是无法对某个进程进行深 ...

  6. iostat、vmstat、iftop命令详解

    1.安装iostat命令 yum install sysstat -y 用法:iostat [ 选项 ] [ <时间间隔> [ <次数> ]] 常用选项说明: -c:只显示系统 ...

  7. zabbix使用iostat命令参数监控磁盘性能

    iostat命令 先说一个坑把,在开始监控的时候使用命令iostat -dtkx,得到的结果看上去没问题,但是在web监控窗口数据就说不变动,为啥呢,因为iostat这个命令得到的第一个数据始终是磁盘 ...

  8. iostat命令——监控系统设备的IO负载情况

    iostat命令的安装 #yum install sysstat iostat常见选项 -t   输出数据时打印搜集数据的时间 -m  输出的数据以MB为单位 -d  显示磁盘的统计信息 # iost ...

  9. linux 操作系统级别监控 iostat 命令

    iostat命令可以查看当前机器磁盘io的数据 命令:iostat -x -k 1 -x:展示磁盘的扩展信息 -k:以k为单位展示磁盘数据 1:每1秒刷新一次 展示结果 util:磁盘IO使用率,单位 ...

随机推荐

  1. JavaScript高级---组合模式设计

    一.设计模式 javascript里面给我们提供了很多种设计模式: 工厂.桥.组合.门面.适配器.装饰者.享元.代理.观察者.命令.责任链 在前面我们实现了工厂模式和桥模式 工厂模式 : 核心:为了生 ...

  2. .htaccess文件讲解

    .htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录.作为用户 ...

  3. 【锋利的JQuery-学习笔记】Tab选项卡的实现

    效果图: 关键点: 1.标签和标签内容都是用<ul><li>实现的,主要是通过Css样式设计成选项卡的模样. 2.用js代码实现点击标签时,标签内容的切换(做法是<div ...

  4. OpenLDAP配置信息记录

    随着各种研发工具使用越来越多,单独为每个工具维护一个账号系统的开销越来越大,而且作为用户多个账号密码使用也越来越不方便.所以需要做一个统一账号登陆. 查询了多个方法,又因为之前用过LDAP,所以选择了 ...

  5. Web App之一

    JSP/HTML/CSS---------View(不包含任何的数据,只作为基本的layout) JS------------------------Data(update JSP/HTML)

  6. Chp17: Moderate

    17.1 swap a number in place.(without temporary variables) a = a ^ b; b = a ^ b; a = a ^ b; 17.3 Writ ...

  7. poj 3735 Training little cats(矩阵快速幂,模版更权威,这题数据很坑)

    题目 矩阵快速幂,这里的模版就是计算A^n的,A为矩阵. 之前的矩阵快速幂貌似还是个更通用一些. 下面的题目解释来自 我只想做一个努力的人 @@@请注意 ,单位矩阵最初构造 行和列都要是(猫咪数+1) ...

  8. SDUT图结构练习——最小生成树

    http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2144&cid=1186 这道题一开始是用prim算法做的,一直错一直错,后来问了帅郭改用 ...

  9. hdu 1288 Hat's Tea

    这个要慢慢理解…… ;}

  10. GitHub最全的前端资源汇总仓库(包括前端学习、开发资源、求职面试等)

    在GitHub上收集的最全的前端资源汇总(包括前端学习.前端开发资源.前端求职面试等) 个人结合github上各位大神分享的资源进行了简单的汇总整理,每一个条目下面都有丰富的资料,是前端学习.工作的好 ...