[转帖]优化命令之iotop命令

优化,命令,iotop · 浏览次数 : 0

小编点评

**引言** iotop 是一个开源、免费的工具,用于监控磁盘 I/O 使用状况。它是一个进程级别IO监控工具,与 iostat 工具比较,iostat 是系统级别的IO监控,而 iotop 是进程级别IO监控。 **I/O 的常用快捷键** * **左右箭头:** 用于改变排序字段。 * **r:** 用于改变排序顺序。 * **o:** 用于仅显示有 I/O 的进程。 * **p:** 用于控制线程号/进程号。 * **a:** 用于显示累积使用量。 * **q:** 用于强制刷新。 **交互模式** 在命令启动时没有指定 -b 参数时,可以在接口的运行过程中进行以下交互: 1. 使用左右箭头控制排序字段。 2. 使用 ”r” 或 ”p” 切换排序顺序。 3. 使用 ”o” 或 ”q” 控制 I/O 事件。 **iotop 示例** 以下是一些示例: 1. **只显示正在产生 I/O 的进程:** iotop -o1 2. **显示指定 PID 的 I/O 使用情况:** iotop -p 1234 3. **显示指定用户 的 I/O 使用情况:** iotop -u 5678 4. **打印指定 PID 的时间戳:** iotop -t 1234 5. **显示累积使用量:** iotop -a 6. **强制刷新:** iotop -q

正文

引言

iotop是一款开源、免费的用来监控磁盘I/O使用状况的类似top命令的工具,iotop可以监控进程的I/O信息。它是Python语言编写的,与iostat工具比较,iostat是系统级别的IO监控,而iotop是进程级别IO监控

一、iotop简介

iotop 是一个类似 top 的工具,用来显示实时的磁盘活动。Linux下的IO统计工具如iostat,nmon等大多数是只能统计到per设备的读写情况。iotop 监控 Linux 内核输出的 I/O 使用信息,并且显示一个系统中进程或线程的当前 I/O 使用情况。它显示每个进程/线程读写 I/O 带宽。它同样显示当等待换入和等待 I/O 的线程/进程花费的时间的百分比。

1、iotop安装

yum install -y iotop
  • 1

在这里插入图片描述

2、iotop语法

iotop (选项)

-o:只显示有io操作的进程
-b:批量显示,无交互,主要用作记录到文件。
-n NUM:显示NUM次,主要用于非交互式模式。
-d SEC:间隔SEC秒显示一次。
-p PID:监控的进程pid。
-u USER:监控的进程用户。

    3、iotop参数

    参数 描述
    -o只显示正在产生I/O的进程或线程,运行过程中,可以通过按o随时切换
    -b非交互式下运行,一般用来记录日志
    -n NUM设置监控(显示)次数,主要用于非交互式,默认无限
    -d SEC设置显示的间隔秒数,支持非整数
    -p PID只显示指定进程(PID)的信息
    -u USER显示指定用户的进程信息
    -P只显示进程,不显示所有线程
    -a累积的I/O,显示从iotop启动后每个进程累积的I/O总数,便于诊断问题
    -k显示使用KB单位
    -t非交互模式下,加上时间戳
    -q只在第一次监测时显示列名. 去除头部一些行:这个参数可以设置最多3次来移除头部行:-q列头部只在最初交互显示一次;-qq列头部不显示;-qqq,I/O的总结不显示

    二、I/O的常用快捷键

    左右箭头:改变排序方式,默认是按IO排序。

    • r:改变排序顺序。
    • o:只显示有IO输出的进程。
    • p:进程/线程的显示方式的切换。
    • a:显示累积使用量。
    • q:退出。

    三、交互模式

    如果在命令启动时没有指定-b参数,可以在接口的运行过程中进行如下交互:

    1.排序字段:使用键盘左右箭头控制排序的字段(排序字段右侧有">"或"<",例如: IO>)\
    2.排序方式:"r"键可以控制升序还是降序排列(">"表示降序,"<"表示升序);
    3.仅显示有IO发生的进程:"o"控制是否仅显示发生IO的进程;
    4.进程/线程:"p"键控制线程号/进程号的(PID/TID)
    5.累积流量:"a"键控制是否显示累积IO量,更加利于查看问题
    6.强制刷新:"q"键退出,除了这些键之外的任意键都会强制刷新。
    

      四、iotop示例

      1、只显示正在产生I/O的进程

      iotop -o
      
      • 1

      在这里插入图片描述

      2、显示指定PID

      b是非交互式,-n 2指监控2次,-d 5 表示5秒刷新一次,-p是只显示进程
      在这里插入图片描述

      3、显示指定用户

      b是非交互式,-n 2指监控2次,-d 5 表示5秒刷新一次,-u是指定用户
      在这里插入图片描述

      4、打印指定PID的时间戳

      t表示打印时间戳,-k是单位为KB
      在这里插入图片描述

      五、总结

      iotop 是一个用来监视磁盘 I/O 使用状况的 top 类工具。iotop 具有与 top 相似的 UI,其中包括 PID、用户、I/O、进程等相关信息。

      文章知识点与官方知识档案匹配,可进一步学习相关知识
      云原生入门技能树首页概览12827 人正在系统学习中

      与[转帖]优化命令之iotop命令相似的内容:

      [转帖]优化命令之iotop命令

      文章目录 引言一、iotop简介1、iotop安装2、iotop语法3、iotop参数 二、I/O的常用快捷键三、交互模式四、iotop示例1、只显示正在产生I/O的进程2、显示指定PID3、显示指定用户4、打印指定PID的时间戳 五、总结 引言 iotop是一款开源、免费的用来监控磁盘I/O使用状

      [转帖]优化命令之sar——最牛命令

      目录 一:sar命令概述 1.1sar概述 1.2sar常用选项 1.3常用参数 二:CPU资源监控 2.1整体CPU使用统计(-u) 2.2各个CPU使用统计(-P) 2.3将CPU使用情况保存到文件中 三:内存监控 3.1内存和交换空间监控 3.2内存分页监控 3.3系统交换活动信息监控 四:I

      [转帖]linux性能优化笔记之CPU篇

      http://blog.trumandu.top/2019/03/02/linux%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96%E7%AC%94%E8%AE%B0%E4%B9%8BCPU%E7%AF%87/ cpu优化用到的命令 mpstat进程相关统计工具,cpu/io

      [转帖]JVM系列之:GC调优基础以及初识jstat命令

      本文为《深入学习 JVM 系列》第二十二篇文章 影响垃圾收集性能有三个主要的属性,垃圾收集调优又有三个基本原则,以及垃圾收集调优时需要采集的信息。如果想要对垃圾收集进行调优,则需要根据实际场景对不同属性做出取舍,理解调优的原则以及收集什么信息。 性能属性 吞吐量 吞吐量是评价垃圾收集器能力的重要指标

      [转帖]Shell编程之函数

      目录 Shell函数使用Shell函数的优点 Shell 函数定义使用原则函数传参函数变量的作用范围 函数递归阶乘递归目录函数库 Shell函数 将命令序列按格式写在一起可方便重复使用命令序列Shell函数定义 调用函数的方法 使用Shell函数的优点 使用函数可以避免代码重复使用函数可以将大的工程

      [转帖]linux性能检测之sar详解

      http://blog.51niux.com/?id=99 sar也是sysstat中的一员。 一、介绍 1.1 简介 sar是一个优秀的一般性能监视工具,它可以输出Linux所完成的几乎所有工作的数据。sar命令在sysetat rpm中提供。 sar可以显示CPU、运行队列、磁盘I/O、分页(交

      [转帖]nsenter使用

      https://www.cnblogs.com/edeny/p/15247306.html 这个工具应该不错. 介绍 nsenter是用来进入容器内部的一个命令,它的优势之处在于可以自己选择加载容器的那些namespaces。 说直白一点就是 排查docker容器可以具备inux宿主命令的的方法。

      [转帖]引人入胜,实战讲解“Java性能调优六大工具”之linux命令行工具

      Java性能调优六大工具之Linux命令行工具 为了能准确获得程序的性能信息,需要使用各种辅助工具。本章将着重介绍用于系统性能分析的各种工具。熟练掌握这些工具,对性能瓶颈定位和系统故障排查都很有帮助。 1,Linux命令行工具2, Windows工具3,JDK命令行工具4,JConsole工具5,

      [转帖]用实力诠释细节!“Java性能调优六大工具”之JDK命令行工具

      https://www.zhihu.com/people/javajia-gou-ji-zhu-44/posts JDK命令行工具 在JDK的开发包中,除了大家熟知的java.exe和javac.exe外,还有一系列辅助工具。这些辅助工具位于JDK安装目录下的bin目录中,可以帮助开发人员很好地解决

      [转帖]Redis 性能优化的 13 条军规!史上最全

      https://zhuanlan.zhihu.com/p/118532234 Redis性能优化实战方案 Redis 是基于单线程模型实现的,也就是 Redis 是使用一个线程来处理所有的客户端请求的,尽管 Redis 使用了非阻塞式 IO,并且对各种命令都做了优化(大部分命令操作时间复杂度都是 O