dd 完成得快得令人难以置信

dd 完成得快得令人难以置信

我正在dd将 1.8 GB 映像复制到 Raspberry Pi 的 SD 卡上。复制速度约为 400MB/s,远高于制造商所说的该卡可以达到的写入速度。因此,我认为图像复制不正确。果然,当我尝试启动这张卡时,Raspi 失败了。

然而,当我拍摄完全相同的图像,并使用不同的计算机将其添加​​到同一张 SD 卡上时,它的复制速度约为 6MB/s,但它可以工作。

这是我的 dd 命令:

sudo dd if=2018-07-14-test-lite.img of=/dev/mmcblk0 bs=1M oflag=sync conv=fdatasync

附加信息:

  • 当我将图像添加到卡上,然后使用 dd 读回卡时,我得到了完全相同的图像。这是我如何验证的示例:

    sudo dd if=/dev/mmcblk0 bs=1M count=1704 | sha256sum
    

答案1

如此快速地写入后dd,数据的主要部分位于缓冲区(RAM 中)中。

  • 使用命令刷新缓冲区sync

等待sync完成并且 shell 返回提示符。之后数据应存储在卡中。现在您可以拔掉它并将其移动到 RPi,您可以预期它会正常工作。

相关内容