1、命令简介

vmstat(Virtual Memory Statistics 虚拟内存统计) 命令用来显示Linux系统虚拟内存状态,也可以报告关于进程、内存、I/O等系统整体运行状态。

2、用法

vmstat [-a] [-n] [-t] [-S unit] [delay [ count]]
vmstat [-s] [-n] [-S unit]
vmstat [-m] [-n] [delay [ count]]
vmstat [-d] [-n] [delay [ count]]
vmstat [-p disk partition] [-n] [delay [ count]]
vmstat [-f]
vmstat [-V]

3、选项

-a:显示活跃和非活跃内存
-f:显示从系统启动至今的fork数量 。
-m:显示slabinfo
-n:只在开始时显示一次各字段名称。
-s:显示内存相关统计信息及多种系统活动数量。
delay:刷新时间间隔。如果不指定,只显示一条结果。
count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。
-d:显示磁盘相关统计信息。
-p:显示指定磁盘分区统计信息
-S:使用指定单位显示。参数有 k 、K 、m 、M ,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)
-V:显示vmstat版本信息。

4、示例

示例1:vmstat 命令说明

Procs(进程)

r: 运行队列中进程数量,这个值也可以判断是否需要增加CPU。(长期大于1)
b 等待IO的进程数量。
Memory(内存)
swpd 使用虚拟内存大小,如果swpd的值不为0,但是SI,SO的值长期为0,这种情况不会影响系统性能。
free 空闲物理内存大小。
buff 用作缓冲的内存大小。
cache 用作缓存的内存大小,如果cache的值大的时候,说明cache处的文件数多,如果频繁访问到的文件都能被cache处
Swap
si 每秒从交换区写到内存的大小,由磁盘调入内存。
so 每秒写入交换区的内存大小,由内存调入磁盘。

注意:内存够用的时候,这2个值都是0,如果这2个值长期大于0时,系统性能会受到影响,磁盘IO和CPU资源都会被消耗。有些朋友看到空闲内存(free)很少的或接近于0时,就认为内存不够用了,不能光看这一点,还要结合si和so,如果free很少,但是si和so也很少(大多时候是0),那么不用担心,系统性能这时不会受到影响的。因为linux总是先把内存用光

IO
bi 每秒读取的块数
bo 每秒写入的块数

注意:随机磁盘读写的时候,这2个值越大(如超出1024k),能看到CPU在IO等待的值也会越大。

system(系统)
in 每秒中断数,包括时钟中断。
cs 每秒上下文切换数。

注意:上面2个值越大,会看到由内核消耗的CPU时间会越大。

CPU(以百分比表示)
us 用户进程执行时间百分比(user time) us的值比较高时,说明用户进程消耗的CPU时间多,但是如果长期超50%的使用,那么我们就该考虑优化程序算法或者进行加速。
sy: 内核系统进程执行时间百分比(system time) sy的值高时,说明系统内核消耗的CPU资源多,这并不是良性表现,我们应该检查原因。
wa IO等待时间百分比 wa的值高时,说明IO等待比较严重,这可能由于磁盘大量作随机访问造成,也有可能磁盘出现瓶颈(块操作)。
id 空闲时间百分比

实例2:vmstat –a 显示活跃和非活跃内存,显示增加了inact和active列

示例3: vmstat -s 查看内存使用的详细信息

[root@oracledb ~]# vmstat -s3922280  total memory1294648  used memory705808  active memory398728  inactive memory2627632  free memory132816  buffer memory802932  swap cache8339448  total swap0  used swap8339448  free swap2162 non-nice user cpu ticks46 nice user cpu ticks3257 system cpu ticks3015131 idle cpu ticks1685 IO-wait cpu ticks582 IRQ cpu ticks269 softirq cpu ticks0 stolen cpu ticks935206 pages paged in43585 pages paged out0 pages swapped in0 pages swapped out532677 interrupts656731 CPU context switches1461999263 boot time5706 forks

示例4: vmstat -d 查看磁盘的读/写

[root@oracledb ~]# vmstat -d
disk- ------------reads------------ ------------writes----------- -----IO------total merged sectors      ms  total merged sectors      ms    cur    sec
ram0       0      0       0       0      0      0       0       0      0      0
ram1       0      0       0       0      0      0       0       0      0      0
ram2       0      0       0       0      0      0       0       0      0      0
ram3       0      0       0       0      0      0       0       0      0      0
ram4       0      0       0       0      0      0       0       0      0      0
ram5       0      0       0       0      0      0       0       0      0      0
ram6       0      0       0       0      0      0       0       0      0      0
ram7       0      0       0       0      0      0       0       0      0      0
ram8       0      0       0       0      0      0       0       0      0      0
ram9       0      0       0       0      0      0       0       0      0      0
ram10      0      0       0       0      0      0       0       0      0      0
ram11      0      0       0       0      0      0       0       0      0      0
ram12      0      0       0       0      0      0       0       0      0      0
ram13      0      0       0       0      0      0       0       0      0      0
ram14      0      0       0       0      0      0       0       0      0      0
ram15      0      0       0       0      0      0       0       0      0      0
loop0      0      0       0       0      0      0       0       0      0      0
loop1      0      0       0       0      0      0       0       0      0      0
loop2      0      0       0       0      0      0       0       0      0      0
loop3      0      0       0       0      0      0       0       0      0      0
loop4      0      0       0       0      0      0       0       0      0      0
loop5      0      0       0       0      0      0       0       0      0      0
loop6      0      0       0       0      0      0       0       0      0      0
loop7      0      0       0       0      0      0       0       0      0      0
sr0        0      0       0       0      0      0       0       0      0      0
sda    26814  24219 1867212   35021   3238   7679   87202    8343      0     22

示例5: 查看/dev/sda1磁盘的读/写

[root@oracledb ~]# vmstat -p /dev/sda1
sda1          reads   read sectors  writes    requested writes666       5466          7         50

转载于:https://www.cnblogs.com/lwl117/p/11037926.html

linux命令:vmstat相关推荐

  1. 4)lsof linux命令,***Linux命令实时监测系统(top,htop,iotop,lsof,tcpdump,netstat,vmstat,iostat)...

    摘要:本文总结了8个非常实用的Linux命令行性能监测工具,这些命令支持所有的Linux系统,不仅可以用于监控系统,还可以发现导致性能问题的原因所在. 对每个系统/网络管理员来说,每天监测Linux系 ...

  2. Linux 命令(125)—— vmstat 命令

    1.命令简介 vmstat(Virtual Memory Statistics)命令用于报告虚拟内存状态的统计信息. vmstat 不仅可以监测虚拟内存,也可监测进程.物理内存.内存分页.磁盘和 CP ...

  3. linux备份磁盘数据,linux下vmstat输出数据分析-linux下dd命令备份磁盘的节点(...-linux watch命令用法简介(图文)_169IT.COM...

    Linux下vmstat命令的输出,对应着很多选项,有的朋友不是很明白. 下面为大家作详细的分析,如下: Vmstat procs -----------memory---------- ---swa ...

  4. 一天一个 Linux 命令(40):vmstat 命令

    本文为joshua317原创文章,转载请注明:转载自joshua317博客 一天一个 Linux 命令(40):vmstat 命令 - joshua317的博客 一.简介 Linux下的vmstat( ...

  5. 谁再说不熟悉Linux命令,就把这个给他扔过去!

    欢迎关注方志朋的博客,回复"666"获面试宝典 来源:siye1982.github.io/2016/02/25/linux-list 虽然平时大部分工作都是和Java相关的开发, ...

  6. 最常用 150 个Linux命令汇总(建议收藏)

    点击上方[视学算法]→右上角[...]→[设为星标⭐] 来源:banana 童 www.cnblogs.com/bananaaa/p/7774467.html linux 命令是对 Linux 系统进 ...

  7. 盘点那些最常用的Linux命令,都应该记熟!

      来源:cnblogs.com/chenliangchaoshuai/p/11827383.html linux命令是对Linux系统进行管理的命令.对于Linux系统来说,无论是中央处理器.内存. ...

  8. 每天一个linux命令目录

    开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每天一个linux命令.学习的主要参考资料为: 1.<鸟哥的linux私房菜> 2.http://codingstan ...

  9. linux命令查看cpu负载,怎么使用Linux命令查看CPU使用率

    在Linux系统操作中,有时需要查看cpu的使用率,这就需要用到Linux命令了,Linux查看cpu使用率的命令主要有4个,即top.vmstat.mpstat和prstat命令,一起来了解下吧. ...

最新文章

  1. zabbix 清空历史表
  2. 带给你灵感的20个漂亮的单页网站设计作品
  3. android 让item满屏,Android的全屏活动?
  4. [私]-图片backup
  5. HD_1166敌兵布阵
  6. Scrapy学习-24-集成elasticsearch
  7. nodejs写html文件路径,Nodejs读取文件时相对路径的正确写法(使用fs模块)
  8. PostgreSQL 12 的同步流复制搭建及主库hang问题处理与分析
  9. Linux进程管理:内核中的优先级继承互斥(rtmutex.h):防止优先级反转
  10. android 无线接口 泛收,Android下的Java之interface接口泛型 动态获取泛型的类型
  11. 【论文】Realtime lane tracking of curved local road 检测和跟踪功能
  12. PMP工具之三点估算
  13. jqueryui引用出错(base is not a constructor,widget no found)
  14. 入行数据科学,推荐几本好书看看
  15. elasticsearch-01
  16. MySQL的引擎初识
  17. 【Rocksdb实现分析及优化】事务之Pessimistic ①
  18. XYplorer 21.50.0100多语言版,资源管理器件之一
  19. python实现SVG文件解析
  20. 特征空间之点检测(MATLAB)

热门文章

  1. 多态性与虚拟函数一个典型的例子第一步
  2. python简单学(一)基础语法
  3. DM368开发 --IPNC 设置过程
  4. Hi3516A开发--安装交叉编译器
  5. lower_bound upper_bound
  6. 关于python读取文件的规则
  7. 从 6 篇顶会论文看「知识图谱」领域最新研究进展 | 解读 代码
  8. ANDROID: 超级好用的ADB FORWARD命令
  9. Creating Your First Blockchain with Java. Part 1.
  10. Deep Learning for Chatbots, Part 2 – Implementing a Retrieval-Based Model in Tensorflow