一、命令介绍
vmstat命令主要用来分析系统的虚拟内存内存使用情况,可以监控关于进程、内存、I/O等系统整体运行状况,也常用来分析 CPU 上下文切换和中断的次数。
选项 | 含义 |
---|---|
-a, –active | 显示活跃和非活跃内存,所显示的内容除增加inact和active |
-f, –forks | 显示从系统启动至今的fork数量 |
-m, –slabs | 显示系统的slab信息 |
-s, –stats | 显示内存使用的详细信息 |
-d, –disk | 显示磁盘的读/写情况 |
-D, –disk-sum | 汇总磁盘统计信息 |
-p, –partition |
查看指定磁盘的读/写情况 |
-S, –unit |
定义显示单位 |
-t, –timestamp | 显示时间戳 |
-w, –wide | 扩大输出信息的长度 |
二、输出信息含义
root@cp:~# vmstat
procs ------------memory------------- ---swap-- -----io---- -system-- ------cpu------
r b swap free buff cache si so bi bo in cs us sy id wa st
1 0 204800 1213592 37768 282032 109 126 215 142 36 61 0 0 97 2 0
Procs(进程):
r:正在运行和等待cpu的进程数
b: 处于不可中断睡眠状态的进程数,也就是等待I/O的进程数
Memory(内存):
swpd:使用的虚拟内存大小
free:空闲的物理内存大小
buff:用作缓冲的内存大小
cache:用作缓存的内存大小
Swap:
si:每秒从交换区写到内存的大小,由磁盘调入内存
so:每秒从内存写入到交换区的大小,由内存调入磁盘
IO:
bi:每秒读取的块数
bo:每秒写入的块数
System:
in:每秒中断次数
cs:每秒上下文切换次数
Cpu:
us:处理用户进程所使用的CPU百分比
sy:处理系统进程所使用的CPU百分比
id:CPU的空闲时间百分比
wa:等待I/O所使用的的CPU百分比
st:虚拟机管理器在服务一个虚拟机CPU时虚拟CPU处在非自愿等待下花费的CPU百分比
三、实例演示
用法:vmstat [options] [delay [count]]
选项 时间间隔 采集次数
每隔2秒采集输出一次数据,共采集输出3次
root@cp:~# vmstat 2 3
procs -----------memory---------- ---swap-- -----io----- --system-- ------cpu-----
r b 交换 空闲 缓冲 缓存 si so bi bo in cs us sy id wa st
1 0 204800 1213144 37920 282044 85 98 166 110 30 51 0 0 98 2 0
0 0 204800 1213020 37920 282044 0 0 0 0 29 41 0 0 100 0 0
0 0 204800 1213020 37920 282044 0 0 0 0 22 32 0 0 100 0 0