[ 总结 ] Linux系统测试硬盘I/O
检测硬盘I/O相对来说还是一个比较抽象的概念,但是对系统性能的影响还是至关重要的。
(1)使用hdparm命令检测读取速度:
hdparm命令提供了一个命令行的接口用于读取和设置IDE和SCSI硬盘参数。
安装:
yum install hdparm
语法:
hdparm(选项)(参数)
常用选项:
-f: 将内存缓冲区的数据写入硬盘,并清除缓冲区;
-g: 显示硬盘的磁轨,磁头,磁区等参数;
-i: 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供;
-I: 直接读取硬盘所提供的硬件规格信息;
-t: 评估硬盘的读取效率;
-T: 评估硬盘快取的读取效率;
参数:
设备文件:指定id驱动对应的设备文件名
实例:
使用方法很简单,hdparm -Tt /dev/sda
[root@super python]# hdparm -Tt /dev/sda
/dev/sda:
Timing cached reads: 8470 MB in 2.00 seconds = 4235.83 MB/sec # 硬盘的快取读取速度,2.00秒读取了8470 MB,平均每秒读取:4235.83 MB/sec
Timing buffered disk reads: 722 MB in 3.22 seconds = 224.28 MB/sec # 硬盘的读取速度:3.22秒读取了722 MB,平均每秒读取:224.28 MB/sec
(2) 使用dd命令测试写入速度:
dd命令是一个不太专业的测速工具,如果要求的不是很严格,还是可以进行多次测试来得到一个近似值的。
安装:
yum install coreutils
实例:
[root@super python]# dd if=/dev/zero of=test bs=1M count=2048 # 写入一个文件名test, bytes 为1M,共2048 blocks 的文件,总共大小为:1M * 2048 = 2G
记录了2048+0 的读入
记录了2048+0 的写出
2147483648字节(2.1 GB)已复制,88.8786 秒,24.2 MB/秒
88.8786 秒写入了2.1 GB数据,平均:24.2 MB/秒