Linux 中使用 DD 命令测试 USB 和 SSD 硬盘的读写速度

DD是Linux/UNIX下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换,所以可以用来测试硬盘的顺序读写能力。可以写文件,可以写裸设备。

测试方式:使用dd指令,对磁盘进行连续写入,不使用内存缓冲区,每次写入8k的数据,总共写入20万次,产生1.6G大小的文件。

测试指令:dd if=/dev/zero of=/data01/test.dbf bs=8k count=200000 conv=fdatasync

D D 语法:

功能说明:读取,转换并输出数据。

语  法:

dd

[bs=<字节数>][cbs=<字节数>][conv=<关键字>][count=<区块数>][ibs=<字节数>][if=<文件>][obs=<字节数>][of=<文件>][seek=<区块数>][skip=<区块数>][–help][–version]

补充说明:dd可从标准输入或文件读取数据,依指定的格式来转换数据,再输出到文件,设备或标准输出。

参  数:

bs=<字节数> 将ibs( 输入)与obs(输出)设成指定的字节数。
cbs=<字节数> 转换时,每次只转换指定的字节数。
conv=<关键字> 指定文件转换的方式。
count=<区块数> 仅读取指定的区块数。
ibs=<字节数> 每次读取的字节数。
if=<文件> 从文件读取。
obs=<字节数> 每次输出的字节数。
of=<文件> 输出到文件。
seek=<区块数> 一开始输出时,跳过指定的区块数。
skip=<区块数> 一开始读取时,跳过指定的区块数。
--help 帮助。
--version 显示版本信息。

dd常用参数详解:

if=xxx  从xxx读取,如if=/dev/zero,该设备无穷尽地提供0,(不产生读磁盘IO)
of=xxx  向xxx写出,可以写文件,可以写裸设备。如of=/dev/null,"黑洞",它等价于一个只写文件. 所有写入它的内容都会永远丢失. (不产生写磁盘IO)
bs=8k  每次读或写的大小,即一个块的大小。
count=xxx  读写块的总数量。

具体实例:

测试写速度:

time dd if=/dev/zero of=/tmp/test bs=8k count=1000000

测试读速度:

time dd if=/tmp/test of=/dev/null bs=8k

测试读写速度:

time dd if=/tmp/test of=/var/test bs=64k

参数说明

①、time有计时作用,dd用于复制,从if读出,写到of;

②、if=/dev/zero不产生IO,因此可以用来测试纯写速度;

③、同理of=/dev/null不产生IO,可以用来测试纯读速度;

④、将/tmp/test拷贝到/var则同时测试了读写速度;

⑤、bs是每次读或写的大小,即一个块的大小,count是读写块的数量。

给TA买糖
共{{data.count}}人
人已赞赏
系统运维

Linux系统zip压缩命令详细参数,附文件排除选项的正确用法

2020-5-14 12:21:25

系统运维

shell 中的 dd 命令使用详解

2020-5-16 13:27:32

⚠️
Golurending上的部份代码及教程来源于互联网,仅供网友学习交流,未经Golurending作者或上传书面授权,请勿作他用。
若您的权利被侵害,请联系站长 邮箱codesns#163.com(#-@) 或 点击右侧 私信:管理员 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索