Linux系统之iostat命令的基本使用

news2024/11/26 8:22:24

Linux系统之iostat命令的基本使用

  • 一、iostat命令介绍
  • 二、iostat命令帮助
    • 1.1 iostat的帮助信息
    • 1.2 iostat的选项解释
  • 三、iostat命令的基本使用
    • 3.1 查看iostat工具版本
    • 3.2 直接使用iostat命令
    • 3.3 间隔5秒查看3次信息
    • 3.4 只查看磁盘状态
    • 3.5 以k或M为单位显示信息
  • 四、查看磁盘I/O的详细情况
  • 五、查看cpu状态信息
  • 六、iostat命令的使用总结
    • 6.1 磁盘模块分析
    • 6.2 CPU模块分析

一、iostat命令介绍

iostat命令是Linux/Unix系统中的一种工具,用于监控系统的磁盘I/O活动情况,可以展示磁盘的读写速率、I/O等待时间、CPU使用率等信息。iostat命令可以帮助系统管理员发现系统瓶颈,并且优化系统来提高性能。

二、iostat命令帮助

1.1 iostat的帮助信息

在Linux中的 iostat帮助信息

[root@jeven ~]# iostat --help
Usage: iostat [ options ] [ <interval> [ <count> ] ]
Options are:
[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ]
[ -j { ID | LABEL | PATH | UUID | ... } ]
[ [ -T ] -g <group_name> ] [ -p [ <device> [,...] | ALL ] ]
[ <device> [...] | ALL ]

1.2 iostat的选项解释

  • iostat的选项解释

-c: 仅显示CPU利用率相关信息;
-d: 仅显示磁盘I/O相关信息;
-k: 显示输出的数据单位为KB/s而不是默认的字节/s;
-t: 在输出中显示时间戳(时间戳格式YYYY-MM-DD HH:MM:SS)。
-m:显示状态以兆字节每秒为单位;
-p:仅显示块设备和所有被使用的其他分区的状态;
-V:显示版号并退出;
-x:显示扩展状态。

  • 参数解释

间隔时间:每次报告的间隔时间(秒);
次数:显示报告的次数。

三、iostat命令的基本使用

3.1 查看iostat工具版本

查看iostat工具版本

[root@jeven ~]# iostat -V
sysstat version 10.1.5
(C) Sebastien Godard (sysstat <at> orange.fr)

3.2 直接使用iostat命令

直接使用iostat命令,查看系统的整体情况,显示CPU的负载情况和磁盘的状态信息。

[root@jeven ~]# iostat 
Linux 3.10.0-957.el7.x86_64 (jeven) 	07/05/2023 	_x86_64_	(2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.91    0.01    3.43    0.04    0.00   95.62

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               3.22        38.47        84.87    4775774   10535362
dm-0              3.72        38.14        84.69    4735028   10512927
dm-1              0.00         0.02         0.00       2740        364
dm-2              0.00         0.05         0.05       6781       6606

3.3 间隔5秒查看3次信息

  • 每隔5秒,查看系统的状态信息,一共查看3次。
[root@jeven ~]# iostat 5 3 
Linux 3.10.0-957.el7.x86_64 (jeven) 	07/05/2023 	_x86_64_	(2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.91    0.01    3.45    0.04    0.00   95.59

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               3.23        38.34        84.81    4775782   10564971
dm-0              3.73        38.01        84.63    4735036   10542537
dm-1              0.00         0.02         0.00       2740        364
dm-2              0.00         0.05         0.05       6781       6606

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.35    0.00   10.43    0.00    0.00   87.22

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               3.60         0.00        38.10          0        190
dm-0              3.60         0.00        38.10          0        190
dm-1              0.00         0.00         0.00          0          0
dm-2              0.00         0.00         0.00          0          0

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.26    0.00   10.48    0.00    0.00   87.26

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               0.60         0.00         5.30          0         26
dm-0              0.60         0.00         5.30          0         26
dm-1              0.00         0.00         0.00          0          0
dm-2              0.00         0.00         0.00          0          0

3.4 只查看磁盘状态

  • 只查看磁盘的状态信息,展示磁盘的读写速率、I/O等待时间、CPU使用率等信息。
[root@jeven ~]# iostat -d
Linux 3.10.0-957.el7.x86_64 (jeven) 	07/05/2023 	_x86_64_	(2 CPU)

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               3.23        38.31        84.79    4775782   10570681
dm-0              3.73        37.98        84.61    4735036   10548247
dm-1              0.00         0.02         0.00       2740        364
dm-2              0.00         0.05         0.05       6781       6606


  • 实时监控,每隔5秒就显示磁盘信息。
iostat -d 5

在这里插入图片描述

3.5 以k或M为单位显示信息

以k或M为单位显示信息

[root@jeven ~]# iostat -k
Linux 3.10.0-957.el7.x86_64 (jeven) 	07/05/2023 	_x86_64_	(2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.92    0.01    3.49    0.04    0.00   95.54

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               3.25        38.12        84.70    4775782   10611155
dm-0              3.75        37.80        84.52    4735036   10588721
dm-1              0.00         0.02         0.00       2740        364
dm-2              0.00         0.05         0.05       6781       6606

[root@jeven ~]# iostat -m
Linux 3.10.0-957.el7.x86_64 (jeven) 	07/05/2023 	_x86_64_	(2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.92    0.01    3.49    0.04    0.00   95.54

Device:            tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda               3.25         0.04         0.08       4663      10363
dm-0              3.75         0.04         0.08       4624      10341
dm-1              0.00         0.00         0.00          2          0
dm-2              0.00         0.00         0.00          6          6

四、查看磁盘I/O的详细情况

  • 查看某块磁盘I/O的详细情况
[root@jeven ~]# iostat -x /dev/sda
Linux 3.10.0-957.el7.x86_64 (jeven) 	07/05/2023 	_x86_64_	(2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.91    0.01    3.47    0.04    0.00   95.57

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.51    0.74    2.50    38.26    84.77    76.04     0.03   10.45   14.10    9.37   0.84   0.27

Device 监测设备名称
rrqm/s 每秒需要读取需求的数量
wrqm/s 每秒需要写入需求的数量
r/s 每秒实际读取需求的数量
w/s 每秒实际写入需求的数量
rsec/s 每秒读取区段的数量
wsec/s 每秒写入区段的数量
rkB/s 每秒实际读取的大小,单位为KB
wkB/s 每秒实际写入的大小,单位为KB
avgrq-sz 需求的平均大小区段
avgqu-sz 需求的平均队列长度
await 等待I/O平均的时间(milliseconds)
svctm I/O需求完成的平均时间
%util 被I/O需求消耗的CPU百分比

五、查看cpu状态信息

查看cpu状态信息

[root@jeven ~]# iostat -c 5 2
Linux 3.10.0-957.el7.x86_64 (jeven) 	07/05/2023 	_x86_64_	(2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.92    0.01    3.48    0.04    0.00   95.56

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.36    0.00   10.66    0.00    0.00   86.99

%user:表示用户空间程序执行的CPU时间百分比。
%nice:表示以较高的优先级运行的用户进程的CPU时间百分比。
%system:表示内核空间程序执行的CPU时间百分比。
%iowait:表示CPU等待I/O操作完成的时间百分比。
%steal:表示由于运行虚拟机等原因被其他虚拟机占用的CPU时间百分比。
%idle:表示CPU空闲时间的百分比。

六、iostat命令的使用总结

6.1 磁盘模块分析

在使用IOStat进行系统性能监控时,需要注意综合分析磁盘和CPU等多个性能指标,以全面评估系统性能瓶颈的位置和原因。

通过监控以上指标,可以识别磁盘的瓶颈位置,例如:

  • 如果r/s和w/s较高,说明磁盘IO压力较大,需要考虑更换更高性能的硬盘;
  • 如果await和svctm较高,说明磁盘处理I/O请求的能力不足,可能需要更换磁盘控制器或升级磁盘阵列等。

6.2 CPU模块分析

通过监控以上指标,可以识别CPU的瓶颈位置,例如:

  • 如果%user和%system较高,说明CPU的负载较大,可能需要考虑升级CPU或增加CPU核心数;
  • 如果%iowait较高,说明CPU等待IO完成的时间较长,可能需要优化磁盘性能或者减少磁盘IO操作;
  • 如果%idle值高,表示CPU较空闲,系统处于空闲状态,无太多处理任务;
  • 如果%idle值高但系统响应慢时,有可能是CPU等待分配内存,此时应加大内存容量。
  • 如果%idle较低,说明CPU负载较大,可能需要考虑优化应用程序或增加CPU资源等。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JMM 规范

JMM是Java Memory Model&#xff08;Java 内存模型&#xff09;的缩写&#xff0c;是Java虚拟机规范中定义的一套规则&#xff0c;用来规范Java程序在多线程环境下的内存访问方式。其主要作用是保证多线程之间的数据可见性、有序性和原子性。JMM规范定义了一些程序员和JVM实现者…

机器学习(ML)策略

目录 1、正交化的概念 2、单一数字评估指标&#xff08;Single number evaluation metric&#xff09; 3、训练/开发/测试集划分 4、迁移学习 5、多任务学习 6、端到端深度学习 1、正交化的概念 正交化是机器学习中一种常用的数据预处理技术&#xff0c;用于减少特征之间…

IMX6ull SPI 协议

一 SPI 简介 1.1 SPI SPI 全称是 Serial Perripheral Interface&#xff0c;也就是串行外围设备接口。 SPI 是 Motorola 公司推出的一种同步串行接口 技术&#xff0c;是一种高速、全双工的同步通信总线&#xff0c; SPI 时钟频率相比 I2C 要高很多&#xff0c;最高可以工作 …

【IT服务管理】MITRE :IT服务管理

定义&#xff1a; 信息技术 (IT) 服务管理 (ITSM) 是解决管理、支持和交付 IT 服务的最佳实践的框架、流程和模型的通用保护伞。IT 服务可能包括&#xff08;由 NIST 为云计算定义&#xff09;&#xff1a;软件即服务 (SaaS)、平台即服务 (PaaS) 和基础设施即服务 (IaaS)。 关键…

DevExpress WPF Scheduler组件,快速构建性能优异的调度管理器!(下)

在上文中&#xff08;点击这里回顾>>&#xff09;&#xff0c;我们介绍了DevExpress WPF Scheduler组件中的日历视图、时间轴视图等&#xff0c;在本文中我们将继续带大家了解Scheduler组件的UI/UX自定义等其他功能。 DevExpress WPF拥有120个控件和库&#xff0c;将帮助…

Spring Boot 61:JPA 中的级联类型

Spring Boot 61&#xff1a;JPA 中的级联类型 图源&#xff1a;简书 (jianshu.com) 关系型数据库的增删改查操作会因为有关联关系而存在“级联操作”的需要&#xff0c;体现在 JPA 中&#xff0c;就是实体中会定义的级联类型&#xff08;Cascade Type&#xff09;。 JPA 中的…

【二维属性+贪心+双指针】ABC 195 D

D - Shipping Center (atcoder.jp) 题意&#xff1a; 思路&#xff1a; 经典中的经典&#xff0c;二维属性&#xff0c;对于其中的一个关键字排序&#xff0c;然后双指针将合法的可行解放入容器中&#xff0c;再去容器中找最优解&#xff0c;用双指针是因为它具有单调性 这里…

18-Linux 常用命令

目录 1.ls PS&#xff1a;FinalShell设置背景和字体 2.pwd 3.cd PS&#xff1a;认识 Linux 目录结构——Linux 是一个树形目录结构 PS&#xff1a;绝对路径 vs 相对路径 PS&#xff1a;使用 tab 键补全 PS&#xff1a;使用 ctrl c 重新输入 4.touch PS&#xff1a;L…

基于梯度下降算法的无约束函数极值问题求解

基于梯度下降算法的无约束函数极值问题求解 1 知识预警1.1导数1.2偏导数1.3方向导数1.4梯度 2 梯度下降算法3 无约束函数极值问题求解3.1 算例13.1.1 Python编程求解3.1.2 求解结果与可视化 3.2 算例2 Rosenbrock函数3.2.1 Python编程求解3.2.2 求解结果与可视化 1 知识预警 1…

JSON多层级数据自动映射值优化

JSON多层级数据自动映射值优化 FieldMethodHandles结果分析 Spring boot装载模板代码工程中&#xff0c;JSON多层级数据自动映射值只是简单封装JsonPath&#xff0c;对DTO的声明字段做foreach轮询&#xff0c;检查字段注解JPath&#xff0c;然后从JsonPath的解析缓存中读取JPat…

数字孪生三维可视化在海洋能源开发中的应用有哪些?

数字孪生是一种将现实世界中的实体、系统或过程在虚拟世界中重构&#xff0c;并相互映射和交互的领先技术。在能源领域&#xff0c;数字孪生技术可谓大有作为&#xff0c;比如通过实时监测和分析各种数据&#xff0c;提高能源的利用效率、降低能源成本、优化能源分配&#xff0…

【零基础入门学习Python---Python中机器学习和人工智能之快速入门实践】

&#x1f680; 零基础入门学习Python&#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜…

android_mars老师_获取用户定位

结果展示 MainActivity package com.example.locationmanager;import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity;import android.annotation.SuppressLint; import android.content.Context; import android.location.Location; import …

JavaWeb 笔记——3

JavaWeb 笔记——3 JavaWeb技术栈一、HTTP1.1、HTTP介绍1.2、HTTP请求数据格式1.3、HTTP响应数据格式 二、Web服务器 - Tomcat2.1、简介&基本使用2.2、Tomcat配置和部署项目2.3、Web项目结构2.4、创建MavenWeb项目2.5、IDEA集成本地Tomcat2.6、Tomcat-Tomcat Maven插件 三、…

23西安电子科技大学通信工程学院811考研录取情况

01、通信工程学院各个方向 02、23通信工程学院一志愿考研录取情况总览、平均分 PS&#xff1a;通院23年院线相对于22年院线上涨5-15分&#xff0c;个别专业下降10分反应西电通院热度23年和22年基本一致。 PS&#xff1a;1、通院23年比较多的考生在本部学硕、专硕扎堆&#xff…

【花雕】全国青少年机器人技术一级考试备考实操搭建手册6

随着科技的不断进步&#xff0c;机器人技术已经成为了一个重要的领域。在这个领域中&#xff0c;机械结构是机器人设计中至关重要的一部分&#xff0c;它决定了机器人的形态、运动方式和工作效率。对于青少年机器人爱好者来说&#xff0c;了解机械结构的基础知识&#xff0c;掌…

yolov7论文学习——创新点解析、网络结构图

创新点 1、提出了E-ELAN&#xff0c;但是只在yolov7-e6e中使用到。 2、yolov7基于拼接模型的缩放方法&#xff0c;在yolov7x中使用到。 3、将重参数化卷积应用到残差模块中或者用到基于拼接的模块中去。RepConvN 4、提出了两种新的标签分配方法 一、ELAN和E-ELAN 1、 ELAN …

AI 如何应对 DevOps 监控和可观察性挑战

持续监控和可观察性用例 CI异常检测&#xff1a; AI可以分析历史数据以检测持续集成阶段的异常。任何不寻常的变化都可以在进入下一阶段之前进行标记以供审查。IBM Watson AnomalyDetection 等工具可以通过使用 AI 检测模式和异常情况来帮助识别这些异常情况。 代码质量保证&…

如何快速定位linux故障

1、背景 有时候会遇到一些疑难杂症&#xff0c;并且监控插件并不能一眼立马发现问题的根源。这时候就需要登录服务器进一步深入分析问题的根源。那么分析问题需要有一定的技术经验积累&#xff0c;并且有些问题涉及到的领域非常广&#xff0c;才能定位到问题。所以&#xff0c…

防火墙详解

1、什么是防火墙&#xff1f; 防火墙&#xff08; Firewall &#xff09;是防止火灾发生时&#xff0c;火势烧到其它区域&#xff0c;使用由防火材料砌的墙。 后来这个词语引入到了网络中&#xff0c;把从外向内的网络入侵行为看做是火灾&#xff0c;防止这种入侵的策略叫做防…