测试硬盘读写的速度

  • Post author:
  • Post category:其他


[root@centos /]$  time dd if=/dev/zero of=/data/test bs=8k count=1000000
1000000+0 records in
1000000+0 records out
8192000000 bytes (8.2 GB) copied, 24.5315 s, 334 MB/s

real    0m24.534s
user    0m0.208s
sys    0m12.931s
[root@centos /]$ time dd if=/data/test of=/dev/null bs=8k
1000000+0 records in
1000000+0 records out
8192000000 bytes (8.2 GB) copied, 18.6046 s, 440 MB/s

real    0m18.670s
user    0m0.017s
sys    0m13.771s
 







上面简单测试了下,/data上面硬盘的读写速度。



[root@centos /]$ dd –help

Usage: dd [OPERAND]…

or:  dd OPTION




Copy a file, converting and formatting according to the operands.




参数选项





bs=BYTES        read and write BYTES bytes at a time (also see ibs=,obs=)

cbs=BYTES       convert BYTES bytes at a time

conv=CONVS      convert the file as per the comma separated symbol list

count=BLOCKS    copy only BLOCKS input blocks

ibs=BYTES       read BYTES bytes at a time (default: 512)

if=FILE         read from FILE instead of stdin

iflag=FLAGS     read as per the comma separated symbol list

obs=BYTES       write BYTES bytes at a time (default: 512)

of=FILE         write to FILE instead of stdout

oflag=FLAGS     write as per the comma separated symbol list

seek=BLOCKS     skip BLOCKS obs-sized blocks at start of output

skip=BLOCKS     skip BLOCKS ibs-sized blocks at start of input

status=WHICH    WHICH info to suppress outputting to stderr;

‘noxfer’ suppresses transfer stats, ‘none’ suppresses all

BLOCKS and BYTES may be followed by the following multiplicative suffixes:

c =1, w =2, b =512, kB =1000, K =1024, MB =1000*1000, M =1024*1024, xM =M

GB =1000*1000*1000, G =1024*1024*1024, and so on for T, P, E, Z, Y.

Each CONV symbol may be:

ascii     from EBCDIC to ASCII

ebcdic    from ASCII to EBCDIC

ibm       from ASCII to alternate EBCDIC

block     pad newline-terminated records with spaces to cbs-size

unblock   replace trailing spaces in cbs-size records with newline

lcase     change upper case to lower case

nocreat   do not create the output file

excl      fail if the output file already exists

notrunc   do not truncate the output file

ucase     change lower case to upper case

sparse    try to seek rather than write the output for NUL input blocks

swab      swap every pair of input bytes

noerror   continue after read errors

sync      pad every input block with NULs to ibs-size; when used

with block or unblock, pad with spaces rather than NULs

fdatasync  physically write output file data before finishing

fsync     likewise, but also write metadata

Each FLAG symbol may be:

append    append mode (makes sense only for output; conv=notrunc suggested)

direct    use direct I/O for data

directory  fail unless a directory

dsync     use synchronized I/O for data

sync      likewise, but also for metadata

fullblock  accumulate full blocks of input (iflag only)

nonblock  use non-blocking I/O

noatime   do not update access time

noctty    do not assign controlling terminal from file

nofollow  do not follow symlinks

Sending a USR1 signal to a running `dd’ process makes it

print I/O statistics to standard error and then resume copying.

$ dd if=/dev/zero of=/dev/null& pid=$!

$ kill -USR1 $pid; sleep 1; kill $pid

18335302+0 records in

18335302+0 records out

9387674624 bytes (9.4 GB) copied, 34.6279 seconds, 271 MB/s




版权声明:本文为lyc417356935原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。