磁盘性能测试

来源:互联网 发布:中国根域名服务器在哪 编辑:程序博客网 时间:2024/05/01 23:30

 

有时候我们对一个新的磁盘阵列进行简单测试,但是又不知道用什么的工具合适,其实linux/unix本身已经提供了这样的工具(dd)

 

1.测试磁盘写能力

 

time dd if=/dev/zero of=/opt/test.db bs=1M count=3000


3000+0 records in
3000+0 records out

real    1m18.735s
user    0m0.001s
sys     0m9.972s

 

因为/dev/zero是一个伪设备,它只产生空字符流,对它不会产生IO,所以,IO都会集中在of文件中,of文件只用于写,所以这个命令相当于测试磁盘的写能力。

 

2.测试磁盘读能力

 

time dd if=/dev/sda5 of=/dev/null bs=1M

6912+0 records in
6912+0 records out


real    1m51.310s
user    0m0.004s
sys     0m9.253s

因为/dev/sdb5是一个物理分区,对它的读取会产生IO,/dev/null是伪设备,相当于黑洞,of到该设备不会产生IO,所以,这个命令的IO只发生在/dev/sda5上,也相当于测试磁盘的读能力。

 

3. 测试同时读写能力

 

time dd if=/dev/sda5 of=/opt/test.db bs=1M

2193+0 records in
2193+0 records out


real    1m36.257s
user    0m0.001s
sys     0m8.480s

 

 

这个命令下,一个是物理分区,一个是实际的文件,对它们的读写都会产生IO(对/dev/sdb1是读,对/test.db是写),假设他们都在一个磁盘中,这个命令就相当于测试磁盘的同时读写能力。

 

4:其他能力(来自百度)

 

    修复硬盘:

 

  dd if=/dev/sda of=/dev/sda

   硬盘较长时间(比如1,2年)放置不使用后,磁盘上会产生magnetic fluxpoint。当磁头读到这些区域时会遇到困难,并可能导致I/O 错误。当这种情况影响到硬盘的第一个扇区时,可能导致硬盘报废。上边的命令有可能使这些数据起死回生。且这个过程是安全,高效的

 

确定硬盘的最佳块大小:

 

    通过比较以上命令输出中所显示的命令执行时间,即可确定系统最佳的块大小,数据量大小都一样,块大小不一致,看哪个时间最短

 

  dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file

  dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file

  dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file

  dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file

 

原创粉丝点击