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

如果vmstatiostat命令在你的系统中不可用,请安装sysstat软件包。vmstatsariostat命令都包含在sysstat(系统监控工具)软件包中。iostat命令生成CPU和所有设备的统计信息。你可以从这个连接中下载源代码包编译安装sysstat,但是我们建议通过YUM命令进行安装。

在Linux系统中安装sysstat

  1. #yum -y install sysstat
  • vmstat - 内存,进程和分页等的简要信息。
  • iostat - CPU统计信息,设备和分区的输入/输出统计信息。

Linux下vmstat命令的6个范例

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

如下范例中输出6列。vmstat的man页面中解析的每一列的意义。最重要的是内存中的free属性和交换分区中的siso属性。

  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
  • Free – 空闲的内存空间
  • si – 每秒从磁盘中交换进内存的数据量(以KB为单位)。
  • so – 每秒从内存中交换出磁盘的数据量(以KB为单位)。

注意:如果你不带参数的执行vmstat命令,它会输出自系统启动以来的总结报告。

2. 每X秒执行vmstat,共执行N次

下面命令将会每2秒中执行一次vmstat,执行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命令

-t参数执行vmstat命令,该命令将会在每一行输出后都带一个时间戳,如下所示。

  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参数(大写和MB)将会以MB为单位输出。vmstat默认以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

转自:https://linux.cn/article-4024-1.html

vmstat和iostat命令进行Linux性能监控的更多相关文章

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

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

  2. 系统性能监控之vmstat和iostat命令

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

  3. Linux 性能监控之CPU&内存&I/O监控Shell脚本2

    Linux 性能监控之CPU&内存&I/O监控Shell脚本2   by:授客 QQ:1033553122 思路: 捕获数据->停止捕获数据->提取数据 备注:一些命令的输 ...

  4. Linux性能监控与分析之--- CPU

    Linux性能监控与分析之--- CPU 望月成三人关注 2016.07.25 18:16:12字数 1,576阅读 2,837 CPU性能指标 用户进程使用CPU的比率 系统进程使用CPU的比率 W ...

  5. Linux性能监控

    转自:http://blog.csdn.net/chosen0ne/article/details/8200737 linux性能监控,就是要监控系统的各个子系统是否正常.linux主要的子系统包括: ...

  6. Linux 性能监控之CPU&内存&I/O监控Shell脚本1

    Linux 性能监控之CPU&内存&I/O监控Shell脚本1   by:授客 QQ:1033553122   #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`if ...

  7. linux性能监控 -CPU、Memory、IO、Network等指标的讲解

    [操作系统-linux]linux性能监控 -CPU.Memory.IO.Network等指标的讲解(转) 一.CPU 1.良好状态指标 CPU利用率:User Time <= 70%,Syst ...

  8. linux性能监控命令(vmstat、sar、iostat、netstat)

    1.常用系统命令Vmstat.sar.iostat.netstat.free.ps.top等 2.常用组合方式• 用vmstat.sar.iostat检测是否是CPU瓶颈• 用free.vmstat检 ...

  9. Linux性能监控分析命令(三)—iostat命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof 命令介绍: i ...

随机推荐

  1. Xilinx FPGA用户约束文件(转自xilinx ISE 开发指南

    FPGA设计中的约束文件有3类:用户设计文件(.UCF文件).网表约束文件(.NCF文件)以及物理约束文件(.PCF文件),可以完成时序约束.管 脚约束以及区域约束.3类约束文件的关系为:用户在设计输 ...

  2. 【Unity】10.2 通用动画的导入和设置

    分类:Unity.C#.VS2015 创建日期:2016-05-02 一.简介 使用类人动画时,Mecanim 的强大之处最明显.但是,尽管没有 Avatar 系统和其他功能,非类人动画也仍然受Mec ...

  3. HTML5学习笔记(十八):闭包

    高阶函数 JavaScript的函数其实都指向某个变量.既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,也可以返回一个函数,这种函数就称之为高阶函数. 函数作为参 ...

  4. GDB 调试解析

    GDB(GNU Debugger)是一个强大的命令行调试工具.大家知道命令行的强大就是在于,其可以形成执行序 列,形成脚本.UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优 ...

  5. (转)使用异步Python 3.6和Redis编写快速应用程序

    转自:http://mp.weixin.qq.com/s?__biz=MjM5NzU0MzU0Nw==&mid=2651374524&idx=1&sn=d289aa7aa484 ...

  6. node的http请求

    //node的http服务 'use strict' var http = require('http') var server = http.createServer(function (reque ...

  7. openfire 发送 接受 注册 广播 好友列表 在线状态

    package cn.zsmy.utils.openfire; import java.io.BufferedReader; import java.io.InputStreamReader; imp ...

  8. 通用性好的win2003序列号: (推荐先用这个里面的)

    通用性好的win2003序列号: (推荐先用这个里面的)FJ8DH-TQPYG-9KFHQ-88CB2-Y7V3Y GRD4P-FTQQF-JCDM8-4P6JK-PFG7MJD7JX-KCDTH-7 ...

  9. js实现类似微信网页版在可编辑的div中粘贴内容时过滤剪贴板的内容,光标始终在粘贴内容后面,以及将光标定位到最后的方法

    过滤剪贴板内容以及定位可编辑div光标的方法: <!DOCTYPE html><html lang="en"><head>  <meta ...

  10. 【论文笔记】Training Very Deep Networks - Highway Networks

    目标: 怎么训练很深的神经网络 然而过深的神经网络会造成各种问题,梯度消失之类的,导致很难训练 作者利用了类似LSTM的方法,通过增加gate来控制transform前和transform后的数据的比 ...