dd在写入时是否验证数据?[重复]


2

这个问题在这里已有答案:

我正在调整驱动器

dd if=/dev/zero of=/dev/sdd

在USB 3.0端口上,看起来磁盘写了一半的时间并且读取了一半的时间。

17564 be/4 root       10.59 M/s   10.59 M/s  0.00 % 96.60 % dd if=/dev/zero of=/dev/sdd

性能比我预期的慢,只有~10M / s写入,看起来其余的带宽正被读取占用。磁盘未安装,也未被任何其他程序使用。

这是预期的dd吗?


我想知道/dev/zero输入是否算作读数。如果你想提高性能,使用缓冲区大小会有所帮助,目前你正在读/写一个字节: dd bs=1M if= of=
保罗


似乎使用bs和一个计数只是写。也许没有计数dd在写入之间读取磁盘以查看它是否在最后。卡米尔,就是这样,谢谢!
Ric Clark 2016年

1
我希望有人能够对标题中提到的内容提供明确的答案,因为我无法找到关于dd是否对其所写内容进行任何验证的实际文档。
fixer1234 2016年

Answers:


2

您没有使用bs=参数指定块大小,因此dd写入512字节块。

您的硬盘驱动器有4096个字节的物理块(请参阅https://superuser.com/questions/tagged/advanced-format),或者USB控制器不能写入512字节的块,而只能写入更大的块。

对于dd要求硬盘驱动器的每512字节写入,必须实际执行4096字节读取和4096字节写入。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.