Iotop是一个开源和免费的实用工具类似, 靠前指挥 ,提供了一种简单的方法来监视Linux的磁盘I / O的使用细节,并通过对系统进程或线程打印现有的I / O利用率表。
Iotop工具基于Python编程和需要内核计费功能,以监测和显示过程。 这是系统管理员非常有用的工具来跟踪,可能会导致较高的磁盘I / O读的具体过程/写。
Iotop前提条件
- 内核2.6.20或更高版本
- Python 2.7或更高版本
本文介绍如何安装iotop程序在每个进程的基础在Linux系统中监视和跟踪Linux设备的I / O(输入/输出)。
在Linux中安装Iotop磁盘I / O监视工具
正如我已经说过,iotop以上需要最新的内核2.6.20和Python 2.7,让我们第一次更新他们都具有以下命令的帮助。
-------------- On RHEL, CentOS and Fedora -------------- # yum update -------------- On Fedora 22+ Releases -------------- # dnf update -------------- On Debian, Ubuntu and Linux Mint -------------- # apt-get update
接下来,通过运行验证您的内核和Python版本:
# uname -r # python -V
重要提示 :在写这篇文章的时候,CentOS的/ RHEL 5.x的使用Python和一个旧版本不能安装iotop。 然而,他们可以使用dstat程序 ,它不iotop的类似的功能。
使用软件包管理器安装iotop
要通过包管理器安装iotop,请从以下列表中相应的命令。
-------------- On RHEL, CentOS and Fedora -------------- # yum install iotop -------------- On Fedora 22+ Releases -------------- # dnf install iotop -------------- On Debian, Ubuntu and Linux Mint -------------- # apt-get install iotop
重要提示 :从您的默认存储库安装iotop会给你一个旧版本。 如果您希望拥有最新版本的iotop,请考虑使用以下说明从源代码进行编译。
从源安装iotop
若要安装最新iotop的版本,去官方项目页面并下载最新的源码包,并使用以下命令系列从源代码编译:
# wget http://guichaz.free.fr/iotop/files/iotop-0.6.tar.bz2 # tar -xjvf iotop-0.6.tar.bz2 # cd iotop-0.6/ # ./setup.py install
重要提示 :您可以在目录中,即中运行iotop(通过运行./iotop.py
),也可以运行安装程序./setup.py install
命令在/ usr / bin中安装iotop:
如何在Linux中使用iotop
在其最简单的可以如图所示不带任何参数执行iotop。
# iotop
你应该得到一个正在运行的进程列表与他们当前的磁盘I / O的使用信息一起:
每个列标题是不言自明的,但在这里有两个重要的事情要考虑:
- IO -在“IO”一栏显示总的I / O(磁盘和交换),用法为每次过程。
- 换入 -在“换入”列显示交换使用情况为每个进程。
我建议开始使用iotop使用-o或-only选项来查看当前进程或线程实际上做的O I /,而不是看所有的进程或线程。
# iotop --only
在Linux磁盘I / O活动上获取警报
您可以使用cron作业调度程序来运行iotop每分钟跟踪它检测到任何I / O活动,并发送警报到您的电子邮件地址。
# vi /etc/cron.d/iotop
并将以下行添加到文件中:
MAILTO=username@domain.com * * * * * root iotop -botqqq --iter=3 >> /var/log/iotop
如果需要,您可以根据您的要求调整上述命令。
要了解iotop计划的更多用法和选项,运行以下命令来检查手册页。
# man iotop
一些重要的iotop用法和键盘快捷键。
- 向左或向右移动箭头键更改排序。
- 使用-version选项来查看版本号并退出。
- 使用-h选项来查看使用的信息。
- 使用-r选项反转排序顺序。
- 使用-o选项检查进程或线程。
- 使用-b选项来打开非交互模式启用日志记录I / O使用。
- 使用-p PID列出所有进程/线程监视。
- 使用-u用户选项列出所有用户进行监视。
- 使用-P选项仅列出进程。 通常iotop显示所有线程。
- 用于检查累计I / O带宽,而不是-a选项。
所有上述iotop选项都相当直接。 界面看起来几乎和功能完全相同的Linux top命令 。
Iotop可以在追查其使用的是Linux的过程非常方便高交换内存使用率或导致磁盘IO活动的高量。