Linux巧用dd密令测试磁盘的读写能力

dd if=/dev/zero of=/data/test.txt bs=4k count=100000
dd if=/dev/sda1 of=/dev/null bs=4k count=1000000000
只是粗略计算方法!

1.首先熟悉下dd密令的用法。

dd

命令用于复制文件并对原文件的内容进行转换和格式化处理
bs=<字节数>:将ibs(输入)与欧巴桑(输出)设成指定的字节数;
cbs=<字节数>:转换时,每次只转换指定的字节数;
conv=<关键字>:指定文件转换的方式;
count=<区块数>:仅读取指定的区块数;
ibs=<字节数>:每次读取的字节数;
obs=<字节数>:每次输出的字节数;
of=<文件>:输出到文件;
seek=<区块数>:一开始输出时,跳过指定的区块数;
skip=<区块数>:一开始读取时,跳过指定的区块数;
–help:帮助;
–version:显示版本信息。

2.熟悉下两个特殊的设备

/dev/zero是一个伪设备,它只产生空字符流,对他不会产生IO,不断的输出0;

/dev/null 相当于黑洞,也可以称作垃圾桶,本身不产生IO,

3.测试磁盘的写能力

dd  if=/dev/zero  of=/data/write.txt  bs=4k  count=10000

if 不断的从zero设备中读取0然后写入,由于zero设备本身不产生IO,IO全部集中于of文件中,of文件只用于写,这个过程相当于测试了磁盘的写能力。

4.测试磁盘的读能力

dd  if=/dev/sda1  of=/dev/null  bs=4k  count=1000000000

of 不断将数据送入“黑洞” null, 由于这个过程本身不产生IO,IO全部集中在if文件中,if文件全部用于读取数据,这个过程相当于测试了磁盘的读能力。

5.测试磁盘的读写能力

dd  if=/dev/sda1  of=/dev/test bs=4k  count=1000000000

这样测试读和写都产生IO流,过程测试了磁盘的读写能力。

4.测试结果

  1. [root@CentOS6-new dev]#dd if=/dev/zero of=/data/write.txt bs=4k count=10000
    10000+0 records in
    10000+0 records out
    40960000 bytes (41 MB) copied, 0.223242 s, 183 MB/s
  2. [root@CentOS6-new dev]#dd if=/dev/sda1 of=/dev/null bs=4k count=1000000000
    262144+0 records in
    262144+0 records out
    1073741824 bytes (1.1 GB) copied, 6.66395 s, 161 MB/s
  3. [root@CentOS6-new dev]#dd if=/dev/sda1 of=/dev/test bs=4k count=1000000000
    dd: writing `/dev/test’: No space left on device
    121759+0 records in
    121758+0 records out
    498720768 bytes (499 MB) copied, 5.83412 s, 85.5 MB/s

      我磁盘的读取速度是183MB/s; 写入的速度是161MB/s;读写能力是85.5MB/s

     你的呢?

 

 

 

 

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/94081

(1)
知行合一知行合一
上一篇 2018-03-31
下一篇 2018-03-31

相关推荐