首页 > 系统相关 >linux 命令使用5--vmstat(内存)

linux 命令使用5--vmstat(内存)

时间:2023-01-05 14:24:49浏览次数:34  
标签:KB -- 命令 vmstat 内存 linux 进程 CPU

1. 简介

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

vmstat命令,是 Virtual Meomory Statistics(虚拟内存统计)的缩写,可用来监控 CPU 使用、进程状态、内存使用、虚拟内存使用、硬盘输入/输出状态等信息。此

2. 格式

命令的基本格式有如下 2 种:

[root@localhost ~]# vmstat [-a] [刷新延时 刷新次数]
[root@localhost ~]# vmstat [选项] 

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

表1 vmstat命令常用选项及含义
选项含义
-fs -f:显示从启动到目前为止,系统复制(fork)的程序数,此信息是从 /proc/stat 中的 processes 字段中取得的。
-s:将从启动到目前为止,由一些事件导致的内存变化情况列表说明。
-S 单位 令输出的数据显示单位,例如用 K/M 取代 bytes 的容量。
-d 列出硬盘有关读写总量的统计表。
-p 分区设备文件名 查看硬盘分区的读写情况。

该命令输出信息中,各个字段以及含义如表 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:每秒进行的事件切换次数。
这两个数越大,代表系统与接口设备的通信越繁忙。
cpu CPU信息字段:
  • -us:非内核进程消耗 CPU 运算时间的百分比。
  • -sy:内核进程消耗 CPU 运算时间的百分比。
  • -id:空闲 CPU 的百分比。
  • -wa:等待 I/O 所消耗的 CPU 百分比。
  • -st:被虚拟机所盗用的 CPU 百分比。

3. 说明

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

 

4. 实例

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

[root@localhost proc]# vmstat 1 3

qiteck@logic:~$ 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
 1  0      0 415880 1253972 5342364    0    0     0    30    3    2  3  1 92  4  0
 0  0      0 415880 1253972 5342364    0    0     0    56 1747 4163  4  1 92  4  0
 1  0      0 415880 1253972 5342364    0    0     0    28 1714 3803  5  1 93  1  0

 

标签:KB,--,命令,vmstat,内存,linux,进程,CPU
From: https://www.cnblogs.com/zhanchenjin/p/17027399.html

相关文章

  • idea为java程序添加启动参数(program arguments,vm arguments,Environment variable)
    programarguments作用programarguments 中的值作为args[]的参数传入应用程序,书写格式参数1参数2参数3注意:参数之间要以空格分隔,如果参数值中间有空格,则用引号......
  • git GNU nano 2.9.3 退出
    文件编辑中常用快捷键:ctrl+X离开nano软件,若有修改过的文件会提示是否保存;选择:yes又提示:filenametowrite:***.launch,选择:Ctrl+T在下一个界面用“上下左右”按键选......
  • python接口自动化系列 - openpyxl库封装04
    前言为了更好的让openpyxl在工作中使用,将openpyxl的常用操作封装起来,这样不仅复用性高,而且阅读性好fromopenpyxlimportload_workbookfromopenpyxl.stylesimportP......
  • Java synchronized
    synchronized是java提供线程间同步的重要机制保证在同一时刻,被修饰的代码块或方法只会有一个线程执行,以达到保证并发安全的效果java内存模型:先通过一个生产者消费者例......
  • RESTful风格与Spring注解
    RESTfulL是一种网络应用程序的设计风格和开发方式,即接口请求方式和路径的一种风格。普通风格:localhost:8080/add?a=1&b=2RestFul风格:localhost:8080/add/1/2GET获......
  • Mock Server的使用
    postman的MockServer使用必须注册一个postman账号才能使用1、创建MockServer1)点击postman左上角的New弹出新建窗口,点击MockServer2)设置参数如下第一步第二步......
  • Java泛型
    Java泛型泛型上下限泛型的上限格式:<?extends类>含义:只能接收该类型及其子类泛型的下限格式:<?super类>含义:只能接收该类型及其父类......
  • Good Bye 2021: 2022 is NEAR D
    GoodBye2021:2022isNEARD这次虽然做了三个(但是C是后来自己看了其他人的代码才发现的问题)下次一定要double的判断大小一定要以x-y<=1e-10这种形式,不能直接和int型......
  • mysql备份与恢复
     1.备份mysqldump-uroot-p123456-Btesttest1>db_test.sql#备份test和test1数据库  2.恢复 恢复有个前提条件:Mysql安装完后必须修改过一次密码,不能......
  • NC22594 Rinne Loves Graph
    题目链接题目题目描述Island发生了一场暴乱!现在Rinne要和Setsuna立马到地上世界去。众所周知:Island是有一些奇怪的城镇和道路构成的(题目需要,游戏党勿喷),有些城镇......