查看系统的I/O使用iostat命令而使用iotop可以根据I/O统计信息排序,追踪到具体的进程

当看到I/O等待时间所占CPU时间的比重很高的时候,首先要检查的就是机器是否正在大量使用交换空间,因为硬盘操作的速度远远低于RAM,所以当系统内存耗尽,开始使用交换空间的时候,系统的性能会受到严重影响。任何想要访问硬盘的操作都要完成与硬盘的I/O交换。所以,故障排除的第一步是看内存是否耗尽,如果是,先解决这个问题。如果还有大量可用的RAM,你需要明确那个进程占用了大部分I/O操作。

在你很难弄明白到底是哪个进程占用了大量I/O资源,使用iostat可以找到是哪个分区执行大量I/O操作。

iostat的使用

最上面显示的是1个cpu,64位系统,linux内核版本

avg-cpu段:

%user: 在用户级别运行所使用的CPU的百分比

%nice: nice操作所使用的CPU的百分比

%system: 在系统级别(kernel)运行所使用CPU的百分比

%iowait: CPU等待硬件I/O时,所占用CPU百分比

%idle: CPU空闲时间的百分比

Device段:

sda:设备名

tps: 每秒钟发送到的I/O请求数.

Blk_read /s: 每秒读取的数据量

Blk_wrtn/s: 每秒写入的数据量.

Blk_read:   读入的总的数据量

Blk_wrtn:  写入的总的数据量

iostat各个参数说明:

-c 仅显示CPU统计信息.与-d选项互斥.

-d 仅显示磁盘统计信息.与-c选项互斥.

-k 以K为单位显示每秒的磁盘请求数,默认单位块.

-p device | ALL

与-x选项互斥,用于显示块设备及系统分区的统计信息.也可以在-p后指定一个设备名,如:

# iostat -p hda

或显示所有设备

# iostat -p ALL

-t    在输出数据时,打印搜集数据的时间.

-V    打印版本号和帮助信息.

-x    输出扩展信息.

iostat后加一个数字

iostat 4 表示每隔4秒就刷新一次

iotop的使用

--version 显示版本号然后退出

-h, --help 显示帮助然后退出

-o, --only 只显示正在产生I/O的进程或线程。除了传参,可以在运行过程中按o生效。

-b, --batch 非交互模式,一般用来记录日志

-n NUM, --iter=NUM 设置监测的次数,默认无限。在非交互模式下很有用

-d SEC, --delay=SEC 设置每次监测的间隔,默认1秒,接受非整形数据例如1.1

-p PID, --pid=PID 指定监测的进程/线程

-u USER, --user=USER 指定监测某个用户产生的I/O

-P, --processes 仅显示进程,默认iotop显示所有线程

-a, --accumulated 显示累积的I/O,而不是带宽

-k, --kilobytes 使用kB单位,而不是对人友好的单位。在非交互模式下,脚本编程有用。

-t, --time 加上时间戳,非交互非模式。

-q, --quiet 禁止头几行,非交互模式。有三种指定方式。

-q     只在第一次监测时显示列名

-qq    永远不显示列名。

-qqq   永远不显示I/O汇总。

查看系统的I/O使用iostat命令而使用iotop可以根据I/O统计信息排序,追踪到具体的进程,布布扣,bubuko.com

时间: 2024-10-21 13:48:30

查看系统的I/O使用iostat命令而使用iotop可以根据I/O统计信息排序,追踪到具体的进程的相关文章

查看系统的I/O使用iostat命令而使用iotop能够依据I/O统计信息排序,追踪到详细的进程

当看到I/O等待时间所占CPU时间的比重非常高的时候,首先要检查的就是机器是否正在大量使用交换空间.由于硬盘操作的速度远远低于RAM,所以当系统内存耗尽.開始使用交换空间的时候,系统的性能会受到严重影响. 不论什么想要訪问硬盘的操作都要完毕与硬盘的I/O交换.所以.故障排除的第一步是看内存是否耗尽.假设是,先解决问题. 假设还有大量可用的RAM.你须要明白那个进程占用了大部分I/O操作. 在你非常难弄明确究竟是哪个进程占用了大量I/O资源,使用iostat能够找到是哪个分区运行大量I/O操作.

linux学习之路之ACL的使用和查看系统上登录的用户的命令使用

我们知道文件的访问权限的是根据文件的属主.属组和其他用户这三种来设置,而ACL是提供这三种之外的更加细部的权限设定.ACL可以对单一用户和目录及文件来设置权限,这对于需要特殊的权限来说很有帮助.在之前谈到的SUID和SGID这些特殊权限,不过这些特殊权限和ACL相比,ACL可以对特定的用户来设定更加细部的权限,而SUID和SGID则是对于多个用户或者一组用户来说比较合适. 在谈ACL的使用之前,我们先一起来谈谈用户访问文件时的顺序是如何进行的?在这里暂时不讨论有关SElinux的使用. 在没有使

linux基础命令-查看系统状态-free -m以及top命令详解

博文说明[前言]: 本文将通过个人口吻介绍Linux下的free命令及top命令的相关知识,在目前时间点[2017年6月19号]下,所掌握的技术水平有限,可能会存在不少知识理解不够深入或全面,望大家指出问题共同交流,在后续工作及学习中如发现本文内容与实际情况有所偏差,将会完善该博文内容. 本文参考文献引用链接: 1.http://www.cnblogs.com/imapla/archive/2013/02/15/2912752.html [好文]2.http://www.cnblogs.com/

vmstat和iostat命令进行Linux性能监控

这是我们正在进行的Linux命令和性能监控系列的一部分.vmstat和iostat两个命令都适用于所有主要的类unix系统(Linux/unix/FreeBSD/Solaris). 如果vmstat和iostat命令在你的系统中不可用,请安装sysstat软件包.vmstat,sar和iostat命令都包含在sysstat(系统监控工具)软件包中.iostat命令生成CPU和所有设备的统计信息.你可以从这个连接中下载源代码包编译安装sysstat,但是我们建议通过YUM命令进行安装. 在Linu

iostat命令详解

iostat命令详解 iostat用于输出CPU和磁盘输入输出.分区.网络文件系统NFS相关的统计信息.iostat命令用于监控系统设备的输入/输出情况,并生成报告,以便根据统计报告修改系统配置,获取更优的性能. 命令格式:iostat [ -c ] [ -d ] [ -N ] [ -n ] [ -h ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ -z ] [ device [...] | ALL ] [ -p [ device [,...] | ALL ] ] [

使用vmstat和iostat命令进行Linux性能监控【转】

转自:https://linux.cn/article-4024-1.html 这是我们正在进行的Linux命令和性能监控系列的一部分.vmstat和iostat两个命令都适用于所有主要的类unix系统(Linux/unix/FreeBSD/Solaris). 如果vmstat和iostat命令在你的系统中不可用,请安装sysstat软件包.vmstat,sar和iostat命令都包含在sysstat(系统监控工具)软件包中.iostat命令生成CPU和所有设备的统计信息.你可以从这个连接中下载

Linux查看系统状态命令

Linux查看系统状态命令     iostat iostat 命令详细地显示了存储子系统方面的情况.你通常用iostat来监控存储子系统总体上运行状况如何,并且在用户注意到服务器运行缓慢之前提早发现输入/输出缓慢的问题.相信我,你应该在用户发现这些问题之前先发现这些问题! meminfo和free meminfo为你详细显示了内存方面的情况.你通常可以使用另一个程序,比如cat和grep,来访问meminfo的信息.比如说,cat /proc/meminfo为你详细显示了服务器的内存在任何一个

[转帖]iostat 命令详解

iostat 命令详解 https://www.jianshu.com/p/5fed8be1b6e8 概述 iostat 主要用于输出磁盘IO 和 CPU的统计信息. iostat属于sysstat软件包.可以用yum install sysstat 直接安装. iostat 用法 用法:iostat [选项] [<时间间隔>] [<次数>] 如下图: iostat 用法 命令参数: -c: 显示CPU使用情况-d: 显示磁盘使用情况-N: 显示磁盘阵列(LVM) 信息-n: 显示

linux小知识之查看系统时间

有个朋友想查看服务器一天的网卡流量,但是没有安装cacti.所以我推荐他使用ifconfig查看下网卡流量,然后看下系统运行时间,除出来参考一下.他居然问我系统时间怎么查看.好吧,那我就写篇文章记录下怎么查看系统时间 方法一: who命令, -r runlevel     -b boot [[email protected] ~]# who -r 运行级别 3 2016-11-03 10:32 [[email protected] ~]# who -b 系统引导 2016-11-03 10:32