
Linux vmstat命令实际操作介绍
-d:显示磁盘相关的统计信息,包括读写区块数和总用量。 -a:显示活跃内存(active)和非活跃内存(inactive)占比。 -f:显示系统启动以来 fork 次数。 -p:指定特定磁盘分区的统计信息。 -s:显示内存及系统活动统计信息,默认作为 vmstat 的常规输出。 -m:显示 slabinfo。
发布日期:2021-05-18 08:56:56
浏览次数:16
分类:精选文章
本文共 2551 字,大约阅读时间需要 8 分钟。
Linux 系统性能监控中,vmstat(Virtual Memory Statistics,虚拟内存统计)是一款强大的工具,用于实时监控系统的虚拟内存、进程、CPU活动等多方面信息。它能够快速提供系统整体运行状态,但无法对单个进程进行深入分析。以下将从 vmstat 的用法、功能、选项参数以及实例展示等方面详细介绍。
vmstat 的用法
vmstat 的基本用法非常简单,用户可以通过以下方式使用:
vmstat [选项参数] [参数]
- 无参数:默认显示虚拟内存及相关统计信息。
- 带时间参数:如
vmstat 2
,表示每 2 秒更新一次信息;vmstat 5
表示每 5 秒更新一次。
vmstat 的功能
vmstat 主要功能包括系统性能监控、内存使用情况查看、磁盘 I/O 统计等。它提供了以下关键信息:
- 进程信息:如运行任务数(r)、等待 I/O 的进程数(b)。
- 内存信息:包括物理内存使用情况(free、buff、cache)、交换区使用情况(si、so)。
- 磁盘 I/O:显示磁盘读写操作次数及相关统计信息。
- 系统活动:包括中断数(in)、上下文切换次数(cs)。
- CPU 使用情况:以百分比显示用户空间和内核空间的 CPU 负载(us、sy、id、wa)。
vmstat 的选项参数
为了满足不同的监控需求,vmstat 提供多种选项参数:
vmstat 的实例
以下通过实例展示 vmstat 的常用命令及输出解读:
1. vmstat 显示虚拟内存使用情况
vmstat
输出示例:
procs: 3, 0, 0memory: 0, 506, 15264swap: 0, 0io: 74, 29, 53system: 139, 1, 99, 0cpu: 0.23 us, 0.17 sy, 0.02 ni, 99.58 id, 0.23 wa, 0.00 hi, 0.00 si, 0.00 us, 0.00 ni, 0.00sy on 4 cores
- procs:当前进程数量。
- memory:物理内存使用情况,包括 swap、free、buff、cache。
- swap:交换区使用情况。
- io:磁盘读写操作频率。
- system:系统活动指标。
- cpu:CPU 使用情况及等待 I/O 的比例。
2. vmstat 每 2 秒更新一次
vmstat 2
输出示例:
procs: 3, 0, 0memory: 0, 506, 15264swap: 0, 0io: 74, 29, 53system: 139, 1, 99, 0cpu: 0.23 us, 0.17 sy, 0.02 ni, 99.58 id, 0.23 wa, 0.00 hi, 0.00 si, 0.00 us, 0.00 ni, 0.00sy on 4 cores
输出间隔更新,但统计信息保持一致。
3. 显示磁盘统计信息
vmstat -d
输出示例:
--磁盘读-- --磁盘写-- --磁盘 I/O-- mergerd 43 0 676 447 0 0 0 0 mergerd 38 0 226 450 mergerd 54 0 2124 998 0 0 0 0 mergerd 42 0 674 695 mergerd 37 0 664 117 0 0 0 0 mergerd 44 0 678 549 mergerd 44 0 678 549 0 0 0 0 mergerd 40 0 670 567 mergerd 92 0 2162 2091 0 0 0 0 mergerd 62 0 2140 846 mergerd 39 0 668 579 0 0 0 0 mergerd 47 0 2132 871sda: 23949 3166 1621538 221257 9490 10847 654856 221706sr0: 35 0 2132 64
- merged:读写合并操作次数。
- reads:磁盘读扇区次数。
- writes:磁盘写扇区次数。
- total_sector:总扇区使用情况。
- loop:关于磁盘分区的读写次数统计。
4. 显示活跃内存与非活跃内存
vmstat -a
输出示例:
procs: 3, 0, 0memory: r b active inactive 0 0 0 0memory: 0, 506, 9490swap: 0, 0io: 74, 29, 53system: 139, 1, 99, 0cpu: 0.23 us, 0.17 sy, 0.02 ni, 99.58 id, 0.23 wa, 0.00 hi, 0.00 si, 0.00 us, 0.00 ni, 0.00sy on 4 cores
- active:当前活跃的内存大小。
- inactive:当前非活跃的内存大小。
5. 查看系统已被 fork 的次数
vmstat -f
输出示例:
5100 forks
- 代表系统启动以来总共发生了 5100 次 fork 调用。
vmstat 的注意事项
- 物理内存不足:only when free,-buffer,swap 加起来小于 50%,才可能影响性能。
- swap 不断:si 和 so 都为 0 时,可能意味着交换分区压力较大。
- 磁盘 I/O 优化:bi 和 bo 的值较高时,建议检查磁盘性能或文件 IO 优化。
vmstat 是系统管理员和开发人员日常监控服务器性能的重要工具。通过不同选项,可以对系统的内存、磁盘、进程和 CPU 等多个维度进行全面监控。
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2025年04月14日 05时08分59秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
centos 7 静态IP,指定DNS
2025-03-31
centos 7如何使用firewalld 添加策略
2025-03-31
CentOS 7升级Python到3.5后yum出错
2025-03-31
centos 7.3 启动mysql_centos7.3 搭建MySQL
2025-03-31
Centos 7.5 docker 容器怎么设置开机自启
2025-03-31
Centos 7.5 SSH改别的端口连接不上,只有默认端口才行(未解决)
2025-03-31
Centos 7.5 如何安装VMware Tools工具
2025-03-31
Centos 7.5 新磁盘创建和挂载XFS文件系统
2025-03-31
Centos 7.5安装safe-rm,防止rm -rf /命令误删除文件
2025-03-31
CentOS 7.X 系统安装及优化
2025-03-31
Centos 7下安装php+mysql+nginx+wordpress教程新版
2025-03-31
CentOS 7之Postfix部署系列 (一) CentOS安装
2025-03-31
flask框架面向移动端的虚拟物品订购平台毕设源码+论文
2025-03-31
flask框架飞机订票管理系统(毕设源码+论文)
2025-03-31
flask框架餐饮管理系统毕设源码+论文
2025-03-31
flask框架高性能教学资源平台设计与实现(毕设源码+论文)
2025-03-31