Vmstat命令详解

描述
vmstat 命令报告关于内核线程、虚拟内存、磁盘、陷阱和 CPU 活动的统计信息。由 vmstat 命令生成的报告可以用于平衡系统负载活动。系统范围内的这些统计信息(所有的处理器中)都计算出以百分比表示的平均值,或者计算其总和。

语法
[root@kqzj ~]# vmstat –help
usage: vmstat [-V] [-n] [delay [count]]
-V prints version.
-n causes the headers not to be reprinted regularly.
-a print inactive/active page stats.
-d prints disk statistics
-D prints disk table
-p prints disk partition statistics
-s prints vm table
-m prints slabinfo
-S unit size
delay is the delay between updates in seconds.
unit size k:1000 K:1024 m:1000000 M:1048576 (default is K)
count is the number of updates.

[root@kqzj ~]# vmstat
procs ———–memory———- —swap– —–io—- –system– —–cpu——
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 100 6248 2148 15464 0 0 97 14 733 49 1 53 45 1 0

各値的详解“

Procs
r: 等待运行的进程数
b: 处在非中断睡眠状态的进程数

Memory
swpd: 虚拟内存使用情况,单位:KB
free: 空闲的内存,单位KB
buff: 被用来做为缓存的内存数,单位:KB
cache:

Swap
si: 从磁盘交换到内存的交换页数量,单位:KB/秒
so: 从内存交换到磁盘的交换页数量,单位:KB/秒

IO
bi: 发送到块设备的块数,单位:块/秒
bo: 从块设备接收到的块数,单位:块/秒

System
in: 每秒的中断数,包括时钟中断
cs: 每秒的环境(上下文)切换次数

CPU
按 CPU 的总使用百分比来显示
us: CPU 使用时间
sy: CPU 系统使用时间
id: 闲置时间
wa:CPU 空闲时间,在此期间系统有未完成的磁盘/NFS I/O 请求。

判断准测:
r<5,b≈0, system列,in,sy,cs会不断跳跃,这里没有明确的限制,唯一的就是这些值最少大于100="" cpu列,us,sys,id和wa也是不确定的,最理想的状态是使cpu处于100%工作状态,单这只适合单用户的情况下。="" 如果在多用户环境中us+sy》80,进程就会在运行队列中花费等待时间,响应时间和吞吐量就会下降。wa="">40表明磁盘io没有也许存在不合理的平衡,或者对磁盘操作比较频繁
如果 r经常大于 4 ,且id经常少于40,表示cpu的负荷很重。
如果pi,po 长期不等于0,表示内存不足。
如果disk 经常不等于0, 且在 b中的队列 大于3, 表示 io性能不好。

示例

1. 要显示引导后的统计信息摘要,请输入:

vmstat

2. 要显示 2 秒时间间隔的 5 个摘要,请输入:

vmstat 2 5

3. 要显示引导后包括逻辑磁盘 scdisk13 和 scdisk14 的统计信息摘要,请输入:

vmstat scdisk13 scdisk14

4. 要显示派生统计信息,请输入:

vmstat -f

5. 要显示各事件的计数,请输入:

vmstat -s

6. 要显示 vmstat的每一输出栏旁边的时间戳记,请输入:

vmstat -t

7. 要以另一套输出栏显示新的 I/O 定向视图,请输入:

vmstat -I

8. 要显示所有可用的 VMM 统计信息,请输入:

vmstat -vs

文章目录
,