iostat
iostat -xdm 1
iostat命令是Linux/Unix系统上的一个性能分析工具,它可以用来监控系统的I/O性能,包括CPU利用率、磁盘读写速度、网络吞吐量等。iostat命令可以实时输出系统的I/O性能信息,也可以按照一定的时间间隔输出统计信息。
iostat命令的常用选项如下:
- -c:显示CPU利用率相关的信息;
- -d:显示磁盘I/O相关的信息;
- -n:显示网络I/O相关的信息;
- -t:在输出中包含时间戳信息;
- -x:显示详细的磁盘I/O相关信息,包括磁盘的平均响应时间、I/O队列长度等。
例如,使用iostat -d命令可以查看磁盘I/O性能信息,如下所示:
Device: tps kB_read/s kB_wrtn/s kB_dscd/s kB_read kB_wrtn kB_dscd
sda 0.32 0.00 3.20 0.00 0 16 0
sdb 1.64 0.00 13.12 0.00 0 66 0
其中,tps表示每秒钟完成的I/O请求次数,kB_read/s和kB_wrtn/s表示每秒钟读取和写入的数据量。
这是iostat命令输出的磁盘I/O性能信息,各项指标的含义如下:
- rrqm/s:每秒钟由于读取操作被延迟而需要重新排队的读取请求次数;
- wrqm/s:每秒钟由于写入操作被延迟而需要重新排队的写入请求次数;
- r/s:每秒钟从设备中读取的次数;
- w/s:每秒钟向设备中写入的次数;
- rMB/s:每秒钟从设备中读取的数据量(以MB为单位);
- wMB/s:每秒钟向设备中写入的数据量(以MB为单位);
- avgrq-sz:平均每个I/O请求的数据量(以扇区为单位);
- avgqu-sz:平均I/O队列长度;
- await:平均I/O请求的等待时间(以毫秒为单位);
- r_await:平均读取请求的等待时间(以毫秒为单位);
- w_await:平均写入请求的等待时间(以毫秒为单位);
- svctm:平均I/O请求的服务时间(以毫秒为单位);
- %util:设备的利用率,即设备处于繁忙状态的时间占总时间的百分比。
iotop
iotop是一款Linux系统的性能监控工具,用于监控磁盘IO使用情况。它可以显示当前系统中磁盘IO使用情况最高的进程信息,包括进程名、进程ID、磁盘IO读写速度等。
使用方法:
- 安装iotop
在大多数Linux系统中,iotop是通过软件包管理器安装的。例如,在Ubuntu系统中,可以使用以下命令安装:
sudo apt-get install iotop
- 运行iotop
运行iotop需要root权限,可以使用以下命令:
sudo iotop
- 查看结果
iotop会实时显示当前系统中磁盘IO使用情况最高的进程信息。可以使用以下快捷键:
- P:按照磁盘IO读取速度排序
- A:按照磁盘IO读写速度排序
- O:按照进程ID排序
- T:按照进程运行时间排序
- q:退出iotop
除此之外,还可以使用其他选项来控制iotop的输出格式和显示内容。可以使用以下命令查看帮助文档:
iotop --help