Linux操作系统提供了一系列的命令来查看磁盘IO状态,这些命令可以帮助系统管理员更好地了解系统磁盘IO性能,以便更好地优化系统性能。
iostat命令
iostat命令是Linux系统中最常用的查看磁盘IO状态的命令,它可以查看系统的IO状态,包括磁盘IO状态、CPU状态和内存状态等。iostat命令的使用方法如下:
# iostat –x 1
上面的命令表示每1秒查看一次磁盘IO状态,其输出结果如下:
Linux 3.10.0-514.el7.x86_64 (test.example.com) 05/05/2017 _x86_64_ (2 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util sda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 sdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util sda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 sdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
上面的输出结果中,每个字段的含义如下:
- rrqm/s:每秒读请求数
- wrqm/s:每秒写请求数
- r/s:每秒完成的读次数
- w/s:每秒完成的写次数
- rkB/s:每秒读出的数据量,单位KB
- wkB/s:每秒写入的数据量,单位KB
- avgrq-sz:平均每次设备I/O操作的数据大小,单位扇区
- avgqu-sz:平均I/O队列长度
- await:平均每次操作的完成时间,单位毫秒
- r_await:读操作的完成时间,单位毫秒
- w_await:写操作的完成时间,单位毫秒
- svctm:服务时间,单位毫秒
- %util:磁盘利用率,单位%
iotop命令
iotop命令是Linux系统中用于查看磁盘IO状态的另一个常用命令,它可以查看系统中每个进程的IO状态,以便更好地了解系统中的IO性能。iotop命令的使用方法如下:
# iotop –o
上面的命令表示查看系统中每个进程的IO状态,其输出结果如下:
Total DISK READ : 0.00 B/s | Total DISK WRITE : 0.00 B/s Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 0.00 B/s TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND 1 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % init 2 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd] 3 be/4 root 0.00 B/s 0.00 B/s 0