vmstat 命令用于报告虚拟内存统计信息,包括系统级别的内存、进程、IO、CPU等性能指标。下面是对 vmstat 命令的详细解释以及一些常用示例:
命令格式:
vmstat [选项] [时间间隔] [次数]
常用选项:
-a:显示活跃和非活跃内存的详细信息。-d:显示磁盘活动统计信息。-p <设备>:显示指定设备的统计信息。-s:以总结形式显示内存和交换空间的统计信息。-m:以页面为单位显示内存统计信息。-t:显示时间戳。-w:显示宽输出格式,更易读。
常用示例:
- 显示系统级别的统计信息:
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 0 514056 18996 221456 0 0 1 2 3 4 5 1 93 1 0
r 列代表运行队列中的进程数,表示正在等待 CPU 执行的进程数。b 列代表阻塞的进程数,表示正在等待磁盘 IO 完成的进程数。swpd 列表示使用的交换空间大小。free 列表示空闲内存大小。buff 列表示用作缓冲区的内存大小。cache 列表示用作缓存的内存大小。si 列表示从磁盘交换空间读入内存的速率。so 列表示从内存写出到磁盘的交换空间的速率。bi 列表示从块设备(磁盘)读取的块数。bo 列表示写入块设备(磁盘)的块数。in 列表示每秒中断的次数。cs 列表示每秒上下文切换的次数。us 列表示用户空间程序占用 CPU 时间的百分比。sy 列表示系统内核占用 CPU 时间的百分比。id 列表示空闲 CPU 时间的百分比。wa 列表示等待 IO 的 CPU 时间的百分比。st 列表示被偷取的 CPU 时间的百分比
- 显示指定时间间隔内的系统级别统计信息,多次输出
vmstat 2 5
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 0 514056 18996 221456 0 0 1 2 3 4 5 1 93 1 0
0 0 0 514056 18996 221456 0 0 0 10 123 456 7 2 88 3 0
1 0 0 514056 18996 221456 0 0 2 5 78 910 12 4 82 2 0
0 1 0 514056 18996 221456 0 0 3 4 56 789 6 2 90 2 0
0 0 0 514056 18996 221456 0 0 1 2 34 567 5 1 93 1 0
- 显示内存统计信息:
vmstat -s331072 K total memory 258292 K used memory 106444 K active memory 54912 K inactive memory 72780 K free memory 2076 K buffer memory 89164 K swap cache 510860 K total swap 0 K used swap 510860 K free swap 27482 non-nice user cpu ticks 1293 nice user cpu ticks 10219 system cpu ticks 1016340 idle cpu ticks 791 IO-wait cpu ticks 15 IRQ cpu ticks 1960 softirq cpu ticks 0 stolen cpu ticks 54308 pages paged in 100243 pages paged out 0 pages swapped in 0 pages swapped out 161375 interrupts 138507 CPU context switches 1303890 boot time 291 forks
该示例显示了系统内存的总量、使用情况,以及与内存相关的其他统计信息。
- 显示磁盘活动统计信息:
vmstat -ddisk- ------------reads------------ ------------writes----------- -----IO------ total merged sectors ms total merged sectors ms cur sec sda 1641 1192 29068 8320 1479 6316 21920 1283 0 0
该示例显示了磁盘读取和写入的统计信息。
- 显示指定设备的统计信息:
vmstat -p sdadisk- ------------reads------------ ------------writes----------- -----IO------ total merged sectors ms total merged sectors ms cur sec sda 1641 1192 29068 8320 1479 6316 21920 1283 0 0
该示例显示了设备 sda 的磁盘读取和写入的统计信息。
- 显示活跃和非活跃内存的详细信息:
vmstat -a




