硬盘io linux 脚本,如何在Linux下监控磁盘IO?

iostat用于获取存储设备和分区的I/O统计信息。iostat是sysstat软件包的一部分。使用iostat,你可以监控存储设备(比如硬驱和SSD)以及分区(磁盘分区)的读/写速度。本文将介绍如何在Linux下使用iostat监控磁盘I/O。

在Ubuntu/Debian上安装iostat:

默认情况下,iostat命令在Ubuntu/Debian上不可用。但你可以使用APT软件包管理器,从Ubuntu/Debian的官方软件包存储库轻松安装sysstat包。正如前面提到,iostat是sysstat软件包的一部分。

先使用以下命令更新APT软件包存储库的缓存:

$ sudo aptupdate

a198042fad584335ef40ca9cdd4e7ecd.png

现在使用以下命令安装sysstat软件包:

$ sudo apt install sysstat

c4ccebe8b2b71f7543a209f5f6472c45.png

sysstat软件包应已安装。

cae3c538041219fed1a25da41583fb8d.png

在CentOS 7上安装iostat:

默认情况下,iostat在CentOS 7上不可用。但sysstat软件包可在CentOS 7的官方软件包存储库中找到。因此,你可以用YUM软件包管理器轻松安装它。

想使用YUM软件包管理器安装sysstat,运行以下命令:

$ sudo yum install sysstat

045f3d9e29fc5d95cb14654d0fe610b3.png

现在,按y然后按回车键继续。

71000b45e80c77b8ec8073907bd71f5a.png

现在,按y然后按回车键,接受CentOS 7软件包存储库的GPG密钥。

7e880ae3477bef5d4cce63d4456ea4d2.png

sysstat应已安装。

eafe872fdc22e6b528ea6166213fe925.png

在Arch Linux上安装iostat:

默认情况下,iostat在Arch Linux上不可用。但sysstat软件包可在Arch Linux的官方软件包存储库中找到。因此,你可以用Pacman软件包管理器轻松安装它。

想安装sysstat,运行以下命令:

$ sudo pacman -Sy sysstat

f70dec2ac637f0a68f538f6f62259548.png

现在,按y然后按回车键继续。

9cd6e1b0133f6b00516f2231dad74e0a.png

sysstat应已安装。

9c805be30c1cf16dc491e40fb8a9db84.png

iostat的基本用法:

你可以使用iostat监控计算机的所有存储设备和磁盘分区,如下所示:

$ sudo iostat

如你所见,iostat生成了当时每个存储设备和分区的读/写速度(以kB/s为单位)和总的读/写内容(以kB为单位)。

4178a42eb918d76616b76309cb8b23f6.png

在上述命令中,iostat仅输出你运行iostat的实例的统计信息。这适用于外壳脚本和自动化。

如果你想查看实时统计信息,可以要求iostat每隔n秒(比如说2秒)更新报告,如下所示:

$ sudo iostat -d 2

如你所见,iostat每隔2秒更新一次报告。

acf38342367ded32ba07eae36cefcd54.png

e412c991e3dc77d1ae6ebffb78b4c65c.png

使用iostat监控特定的存储设备或分区:

默认情况下,iostat监控计算机的所有存储设备。但你也可以使用iostat监控特定的存储设备(比如sda和sdb等)或特定的分区(比如sda1、sda2和sdb4等)。

比如,若想只监控存储设备sda,按以下方式运行iostat:

$ sudo iostat sda

$ sudo iostat -d 2 sda

如你所见,仅监控存储设备sda。

56370878dcc1cc96f41fd3372caa8456.png

你还可以使用iostat监控多个存储设备。

比如想监控存储设备sda和sdb,按以下方式运行iostat:

$ sudo iostat sda sdb

$ sudo iostat -d 2 sda sdb

6fcbf288f5b9e05378c9e845b64d6558.png

如果你想监控特定分区,还可以这么做。

比如假设你想监控分区sda1和sda2,按以下方式运行iostat:

$ sudo iostat sda1 sda2

$ sudo iostat -d 2 sda1 sda2

0eaf10aa937fcd16ddd2d80f9f915b47.png

如你所见,只监控分区sda1和sda2。

044c08a06a0d7b9ffbb1d8a473dc1680.png

原文标题:How to Monitor Disk IO in Linux,作者:Shahriar Shovon

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值