天天看点

linux监控系统资源命令,Linux系统vmstat命令详解:监控系统资源

如果你想动态的了解一下系统资源的使用状况,以及查看当前系统中到底是哪个环节最占用系统资源,就可以使用vmstat命令。

vmstat命令,是Virtual Meomory Statistics(虚拟内存统计)的缩写,可用来监控CPU使用、进程状态、内存使用、虚拟内存使用、硬盘输入/输出状态等信息。此命令的基本格式有如下2种:[[email protected] ~]# vmstat [-a] [刷新延时 刷新次数]

[[email protected] ~]# vmstat [选项]

-a 的含义是用 inact/active(活跃与否) 来取代 buff/cache 的内存输出信息。除此之外,表1 罗列出了vmstat命令的第二种基本格式中常用的选项及各自的含义。表1 vmstat命令常用选项及含义选项含义

-fs-f:显示从启动到目前为止,系统复制(fork)的程序数,此信息是从 /proc/stat 中的 processes 字段中取得的。

-s:将从启动到目前为止,由一些事件导致的内存变化情况列表说明。

-S 单位令输出的数据显示单位,例如用 K/M 取代 bytes 的容量。

-d列出硬盘有关读写总量的统计表。

-p 分区设备文件名查看硬盘分区的读写情况。

例如:[[email protected] proc]# vmstat 1 3

#使用vmstat检测,每隔1秒刷新一次,共刷新3次

procs ——memory—— swap —io system ——cpu——

r b swpd free buff cache si so bi bo in cs us sy id wa st

r b swpd free buff cache si so bi bo in cs us sy id wa st

0 0 0 407376 55772 84644 0 0 5 2 9 10 0 0 100 0 0

0 0 0 407368 55772 84644 0 0 0 0 12 10 0 0 100 0 0

0 0 0 407368 55772 84644 0 0 0 0 15 13 0 0 100 0 0

该命令输出信息中,各个字段以及含义如表 2 所示。表2 vmstat命令输出字段及含义字段含义

procs进程信息字段:-r:等待运行的进程数,数量越大,系统越繁忙。

-b:不可被唤醒的进程数量,数量越大,系统越繁忙。

memory内存信息字段:-swpd:虚拟内存的使用情况,单位为 KB。

-free:空闲的内存容量,单位为 KB。

-buff:缓冲的内存容量,单位为 KB。

-cache:缓存的内存容量,单位为 KB。

swap交换分区信息字段:-si:从磁盘中交换到内存中数据的数量,单位为 KB。

-so:从内存中交换到磁盘中数据的数量,单位为 KB。这两个数越大,表明数据需要经常在磁盘和内存之间进行交换,系统性能越差。

io磁盘读/写信息字段:-bi:从块设备中读入的数据的总量,单位是块。

-bo:写到块设备的数据的总量,单位是块。这两个数越大,代表系统的 I/O 越繁忙。

system系统信息字段:-in:每秒被中断的进程次数。

-cs:每秒进行的事件切换次数。这两个数越大,代表系统与接口设备的通信越繁忙。

cpuCPU信息字段:-us:非内核进程消耗 CPU 运算时间的百分比。

-sy:内核进程消耗 CPU 运算时间的百分比。

-id:空闲 CPU 的百分比。

-wa:等待 I/O 所消耗的 CPU 百分比。

-st:被虚拟机所盗用的 CPU 百分比。

本机是一台测试用的虚拟机,并没有多少资源被占用,所以资源占比都比较低。如果服务器上的资源占用率比较高,那么使用 vmstat 命令查看到的参数值就会比较大,我们就需要手工进行干预。如果是非正常进程占用了系统资源,则需要判断这些进程是如何产生的,不能一杀了之;如果是正常进程占用了系统资源,则说明服务器需要升级了。

本文来自投稿,不代表访得立场,如若转载,请注明出处:http://www.found5.com//view/1031.html