Reference1:http://server.chinabyte.com/495/12361995.shtml
Reference2:https://www.deleak.com/blog/2011/11/05/big-penis-lol/
首先了解两个特殊设备
/dev/null 伪设备,回收站.写该文件不会产生IO
/dev/zero 伪设备,会产生空字符流,对它不会产生IO
测试方法:
a.测试磁盘的IO写速度
time dd if=/dev/zero of=test.dbf bs=8k count=300000
b.测试磁盘的IO读速度
dd if=test.dbf bs=8k count=300000 of=/dev/null
#表示 每次写入/读取8k的数据,执行300000次
dd命令可以通用,但不够专业,也没有考虑到缓存和物理读的区分,测试的数据也是仅作参考,不能算是权威。
##########################
用这个方法测试我08年买的笔记本,写速度23M/s;读速度91M/s
##########################
dd命令解释
dd if= of= bs= skip= seek= conv=
一定不要搞混 source 和 target,不然数据会丢失。所以 dd 平时用着顺手就叫它 dd,但是不小心把数据弄没了就该哭着叫它 Data Destroyer 了。
一般它的常用参数有:
- bs=n,block size,每次读取 n bytes 写入,可与 count 联用;
- ibs=n,一次读入 bytes 个字节 (default is 512);
- obs=n,一次性写 n bytes 个字节 (default is 512);
- bs 可以同时设置上边两个参数;
- cbs=n,一次转换 n 个 bytes,即转换缓冲区大小。;
- count=n, bs 操作的次数,仅拷贝 n 个块,如 dvd: bs=1M count=4430;
- skip=n,指 if 后面的原文件跳过 n bytes 再开始读取;
- seek=n,指 of 后面的目标文件跳过 n bytes 再开始写入;