vmstat命令:系统性能监控

一、命令简介

vmstat​ 是一种在类 Unix 系统上常用的性能监控工具,它可以报告虚拟内存统计信息,包括进程、内存、分页、块 IO、陷阱(中断)和 CPU 活动等。

二、命令参数

2.1 命令格式

vmstat [选项]  [ 延迟 [次数] ]

2.2 选项

  -a, --active           活跃/非活跃内存-f, --forks            自系统启动以来的进程派生数-m, --slabs            slab信息-n, --one-header       不重新显示标题-s, --stats            摘要-d, --disk             磁盘统计-D, --disk-sum         汇总磁盘统计-p, --partition <dev>  特定分区的统计-S, --unit <char>      定义显示单位-w, --wide             宽输出-t, --timestamp        显示时间戳-h, --help     显示此帮助然后退出-V, --version  显示程序版本然后退出

2.3 参数

  • 延迟​: 每次报告之间的延迟时间(以秒为单位)。
  • 次数​: 要报告的次数。

三、命令示例

3.1 显示摘要

小写 s​ 选项显示摘要,默认内存信息以 Byte 为显示单位。使用大写 S​ 选项指定单位为 MB(M)

vmstat -sS MB

输出

#内存信息  1963 M total memory228 M used memory785 M active memory605 M inactive memory310 M free memory104 M buffer memory1320 M swap cache3910 M total swap91 M used swap3819 M free swap
#其他信息220505 non-nice user cpu ticks5204 nice user cpu ticks83658 system cpu ticks95667133 idle cpu ticks24127 IO-wait cpu ticks0 IRQ cpu ticks1697 softirq cpu ticks3186 stolen cpu ticks16046170 pages paged in33059244 pages paged out50165 pages swapped in171026 pages swapped out71506693 interrupts183449791 CPU context switches1727201677 boot time40101 forks

3.2 输出整体信息

使用 vmstat ​命令输出:虚拟内存统计信息,包括进程、内存、分页、块 IO、陷阱(中断)和 CPU 活动等信息。

使用大写 -S​ 选项调整内存显示单位,更利于阅读。注意,这个选项只能改变内存信息的单位,对磁盘等信息等单位无效。

vmstat -S MB

英文环境:正常输出
Clip_2024-09-30_15-56-03

注意,中文环境:不对齐

Clip_2024-09-30_15-55-00​​​​​

3.3 动态输出

设置输出频率

格式:vimstat 更新频率(秒钟)

vmstat 1

输出:每秒输出一次。ctrl + c​ 停止。

recording

设置输出次数

格式:vmstat 更新频率 更新次数

#每秒更新一次,共更新10次
vmstat 1 10

完成 10 次输出后会自动退出 vmstat 命令。

3.4 宽输出格式

使用小写 -w ​参数设置 宽模式


vmstat -w 1

通过比较,使用-w 选项的输出更宽。

Clip_2024-09-30_16-14-33

​​

3.5 磁盘信息

1.显示磁盘 I/O 统计信息,每秒更新一次:

vmstat -d

-S 选项无法改变磁盘信息的显示单位

[root@sc ~]# vmstat -d -S M
disk- ------------reads------------ ------------writes----------- -----IO------total merged sectors      ms  total merged sectors      ms    cur    sec
sda     8645      4  558209    3373 136030  24041 4519632  321532      0    205
sr0       54      0    4192      13      0      0       0       0      0      0
dm-0    7775      0  441727    2865 159239      0 4515404  398469      0    205
dm-1      98      0    4440       3      0      0       0       0      0      0
[root@sc ~]# vmstat -d
disk- ------------reads------------ ------------writes----------- -----IO------total merged sectors      ms  total merged sectors      ms    cur    sec
sda     8645      4  558209    3373 136030  24041 4519632  321532      0    205
sr0       54      0    4192      13      0      0       0       0      0      0
dm-0    7775      0  441727    2865 159239      0 4515404  398469      0    205
dm-1      98      0    4440       3      0      0       0       0      0      0

2.磁盘信息汇总

vmstat -D

输出,同样 -S 选项对它无用。

            4 disks 2 partitions 16576 total reads4 merged reads1008664 read sectors6321 milli reading295321 writes24043 merged writes9035604 written sectors720119 milli writing0 inprogress IO410 milli spent IO

3.6 显示时间戳

使用-t 选项,额外显示时间戳。

vmstat -t -S M
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- -----timestamp-----r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st                 CST0  0      0    819      2    756    0    0     0     1    1   10  0  0 100  0  0 2024-09-30 16:20:44

四、更多

4..1 vmstat 命令输出字段的含义

vmstat ​命令输出字段:

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----r  b   swap  free  buff  cache   si   so    bi    bo   in   cs us sy id wa st

字段含义:

  • procs

    • r​: 等待运行的进程数(正在等待 CPU 资源的进程数)
    • b​: 等待 I/O 的进程数(正在等待 I/O 操作的进程数)
  • memory

    • swap​: 使用的交换空间大小(以 KB 为单位,或者根据 -S ​选项指定的单位)
    • free​: 空闲的内存大小(未被使用的内存大小)
    • buff​: 用作缓冲区的内存大小(主要用于块设备 I/O)
    • cache​: 用作高速缓存的内存大小(主要用于文件系统)
  • swap

    • si​: 从交换区到内存的交换速率(每秒 KB)
    • so​: 从内存到交换区的交换速率(每秒 KB)
  • io

    • bi​: 从块设备接收的块数(每秒)
    • bo​: 发送到块设备的块数(每秒)
  • system

    • in​: 每秒中断数,包括时钟中断
    • cs​: 每秒上下文切换数
  • cpu(这些是 CPU 时间的百分比)

    • us​: 用户时间(非内核进程消耗的 CPU 时间)
    • sy​: 系统时间(内核进程消耗的 CPU 时间)
    • id​: 空闲时间(CPU 没有执行任何进程的时间)
    • wa​: 等待 I/O 的时间(CPU 等待 I/O 操作完成的时间)
    • st​: 被虚拟化偷走的时间(在虚拟机中运行时,宿主机消耗的时间)

请注意,vmstat ​的输出会根据你的系统和配置有所不同,特别是在不同版本的 Linux 发行版中。-S ​选项允许你指定输出单位,可以是 k​(千字节)、K​(千字节)、m​(兆字节)或 M​(兆字节)。例如,-S M ​将以兆字节为单位显示内存和交换空间的大小。

4.2 slab 信息

vmstat -m​ 命令在 Linux 系统中显示的是 slab 分配器的信息,slab 分配器是内核用来管理内存的一种机制,它主要用于分配和释放内核对象,如文件描述符、进程结构等。

vmstat -m​ 的输出通常包含以下几列内容:

  1. Slab 缓存名称:内核 slab 缓存区的名称,表明了该 slab 缓存是用来存储哪种类型的对象。
  2. 活动对象数目:当前正在使用的对象数量。
  3. 活动对象大小:当前正在使用的对象总大小。
  4. 对象数目:slab 缓存中对象的总数。
  5. 对象大小:slab 缓存中所有对象的总大小。
  6. 页面数目:slab 缓存占用的物理页面数。

以下是 vmstat -m ​命令输出的一个示例:

Cache                       Num  Total   Size  Pages
ext4_inode_cache             321    321   960   34
ext4_xattr                  8      8    192   21
buffer_head                 345    345   112   29
vm_area_struct              7954   7954   104   25
mm_struct                   164    164   768   21
...

这些信息可以帮助系统管理员或开发者了解内核中 slab 分配器的使用情况,比如哪些缓存正在使用,它们占用了多少内存,以及它们管理的对象数量等。这对于调试内存使用问题或优化系统性能非常有用。

总结:vmstat输出格式太差了,还是使用其他同类命令吧。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/440305.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

‌多系统萎缩患者的锻炼秘籍:科学运动,守护健康

亲爱的朋友们&#xff0c;今天我们要聊一个既重要又温馨的话题——多系统萎缩患者的锻炼方法。面对这一挑战&#xff0c;科学而合理的锻炼不仅能帮助患者控制病情&#xff0c;还能提升生活质量。让我们一起走进这份“锻炼秘籍”&#xff0c;为爱加油&#xff0c;为健康护航&…

京东云主机怎么用?使用京东云服务器建网站(图文教程)

京东云主机怎么用&#xff1f;非常简单&#xff0c;本文京东云服务器网jdyfwq.com使用以使用京东云服务器搭建WordPress博客网站为例&#xff0c;来详细说下京东云主机的使用方法。使用京东云服务器快速搭建WordPress网站教程&#xff0c;3分钟基于应用镜像一键搞定&#xff0c…

医院综合服务系统小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;患者管理&#xff0c;医生管理&#xff0c;就诊信息管理&#xff0c;科室信息管理&#xff0c;挂号信息管理&#xff0c;系统管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;订单排队&#…

深度学习:词嵌入embedding和Word2Vec

目录 前言 一、词嵌入&#xff08;Embedding&#xff09; 1.传统自然语言处理问题 2.什么是词嵌入 二、Word2vec模型 1.Word2Vec的基本原理 三、CBOW模型训练过程 前言 在机器学习里的自然语言处理&#xff0c;是将语料库中的词语转换成词向量矩阵&#xff0c;再使用朴素…

【车载开发系列】ParaSoft单元测试环境配置(四)

【车载开发系列】ParaSoft单元测试环境配置&#xff08;四&#xff09; 【车载开发系列】ParaSoft单元测试环境配置&#xff08;四&#xff09; 【车载开发系列】ParaSoft单元测试环境配置&#xff08;四&#xff09;一. 如何设置过滤二. 如何设置静态扫描的规则三. 如何设置单…

气膜馆的多元化盈利模式与市场前景—轻空间

随着市场经济的不断繁荣&#xff0c;气膜馆作为一种创新型场馆&#xff0c;凭借其独特的结构设计和灵活的运营模式&#xff0c;逐渐成为创业者关注的焦点。那么&#xff0c;气膜馆如何通过多元化经营实现盈利&#xff1f;本文将为您详细解析气膜馆的经营模式与发展机会。 气膜馆…

【测试】接口测试与接口自动化

壹、接口测试基础 一、接口测试概念 I、基础概念 是测试系统组件间接口的一种测试。 主要用于检测外部系统与系统间、内部子系统间的交互点&#xff1b;测试重点检查数据的交换、传递和控制管理过程&#xff0c;以及系统间的相互逻辑依赖关系。 内部接口调用相当于函数调用&am…

Spring Boot与iTextPdf:高效生成PDF文件预览

​ 博客主页: 南来_北往 系列专栏&#xff1a;Spring Boot实战 在现代应用程序开发中&#xff0c;生成PDF文件是一个常见的需求。PDF文件因其跨平台性和易读性&#xff0c;被广泛应用于文档交换、报告生成和打印预览等场景。Spring Boot作为一个用于简化Spring应用开发的框…

毕设 大数据抖音短视频数据分析与可视化(源码)

文章目录 0 前言1 课题背景2 数据清洗3 数据可视化地区-用户观看时间分界线每周观看观看路径发布地点视频时长整体点赞、完播 4 进阶分析相关性分析留存率 5 深度分析客户价值判断 0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕…

基于51单片机的多路电压测量proteus仿真

地址&#xff1a;https://pan.baidu.com/s/1cpgtfl571DcKfjhKvcKqSA 提取码&#xff1a;1234 仿真图&#xff1a; 芯片/模块的特点&#xff1a; AT89C52/AT89C51简介&#xff1a; AT89C52/AT89C51是一款经典的8位单片机&#xff0c;是意法半导体&#xff08;STMicroelectron…

三种环境下,没有公网ip的虚拟机访问公网的方法

1. windows真机vmware虚拟机 2. 云平台&#xff0c;虚拟机A&#xff08;有公网ip&#xff0c;有内网ip&#xff09;虚拟机B&#xff08;只有内网ip&#xff09; 3. linux真机kvm虚拟机 ------------------------------------------------------------------------------ 第…

基于 springboot vue中学生日常行为评分管理系统设计与实现

博主介绍&#xff1a;专注于Java&#xff08;springboot ssm 等开发框架&#xff09; vue .net php python(flask Django) 小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设&#xff0c;从业十五余年开发设计教学工作☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不然下次找…

Spring源码学习:SpringMVC(4)DispatcherServlet请求入口分析

目录 前言HttpServlet &FrameworkServletHttpServlet #serviceFrameworkServlet#processRequest DispatcherServlet#doServicedoDispatchcheckMultipartgetHandlerAbstractHandlerMapping#getHandlerRequestMappingInfoHandlerMapping#getHandlerInternalAbstractHandlerMe…

Dit架构 diffusion范式分类+应用

1.ping 网址 2.ssh nscc/l20 3.crtl,打开vscode的setting 4.win 10修改ssh配置文件及其密钥权限为600 - 晴云孤魂 - 博客园 整体来看&#xff1a; 使用transformer作为其主干网络&#xff0c;代替了原先的UNet 在latent space进行训练&#xff0c;通过transformer处理潜…

Spring MVC__@RequestMapping注解、获取请求参数、域对象共享数据、视图、Restful

目录 一、RequestMapping注解1、RequestMapping注解的功能2、RequestMapping注解的位置3、RequestMapping注解的value属性4、RequestMapping注解的method属性5、RequestMapping注解的params属性&#xff08;了解&#xff09;6、RequestMapping注解的headers属性&#xff08;了解…

动手学大模型应用开发之大模型简介

动手学大模型应用开发之大模型简介 主要学习目标什么是大语言模型大模型的能力和特点涌现能力作为基座模型支持多元应用的能力支持对话作为统一入口的能力大模型特点 常见大模型ChatGpt通义千问 LangChainLangChain的核心模块 总结相关学习链接 主要学习目标 学习如何进行大模…

【实战】Nginx+Lua脚本+Redis 实现自动封禁访问频率过高IP

大家好&#xff0c;我是冰河~~ 自己搭建的网站刚上线&#xff0c;短信接口就被一直攻击&#xff0c;并且攻击者不停变换IP&#xff0c;导致阿里云短信平台上的短信被恶意刷取了几千条&#xff0c;加上最近工作比较忙&#xff0c;就直接在OpenResty上对短信接口做了一些限制&am…

GeoCue与Xer Technologies合作推动无人机测绘技术革新

GeoCue与Xer Technologies合作推动无人机测绘技术革新 近期,LiDAR测绘硬件和软件开发商GeoCue与瑞士长航时混合动力无人机制造商Xer Technologies AG携手合作,成功将GeoCue的TrueView 720 LiDAR和图像传感器集成至Xer X8无人机平台。这一里程碑式的合作不仅标志着无人机测绘技…

Excel下拉菜单制作及选项修改

Excel下拉菜单 1、下拉菜单制作2、下拉菜单修改 下拉框&#xff08;选项菜单&#xff09;是十分常见的功能。Excel支持下拉框制作&#xff0c;通过预设选项进行菜单选择&#xff0c;可以避免手动输入错误和重复工作&#xff0c;提升数据输入的准确性和效率 1、下拉菜单制作 步…

【简码短链】使用Selenium实现UI自动化测试

1.环境准备 Chrome浏览器 版本为版本 129.0.6668.90&#xff08;正式版本&#xff09; &#xff08;64 位&#xff09; 129版本的Chrome浏览器的驱动,将webdriver放到jdk所在的bin目录下 在命令行中输入:chromedriver验证是否成功 打开IDEA,创建Maven项目,在pom.xml导入所需…