我看过许多与使用 dd、cat 和 clonezilla 来促进分区和设备克隆有关的问题、答案和指南。与其继续这些讨论,我希望dd在这篇文章中针对行为提出非常有针对性的问题。
我正在使用 Ubuntu 18.04 LTS live,从 USB 启动。我有一个带有 Windows7 (/dev/sda) 的 500gb 硬盘。我已经调整了分区的大小,使得未分配的空间略多于 420GB。我的目标是将引导表和分区备份到 120gb SSD (/dev/sdb)。SSD 没有分区并显示 110gb 未分配。
sudo dd if=/dev/sda of=/dev/sdb命中失败并传达“设备上没有剩余空间”。使用 gparted 抽查分区,我看到 /dev/sdb 包含相同的分区、标签、大小和未使用。唯一明显的区别是未分配的空间。
我能够从 SSD 启动 Windows,但还有一些与dd行为相关的问题。
dd尝试复制未分配的设备内容?dd有操作的顺序?(类似于分区 1->99,然后是其他驱动器块)就其价值而言,我确实计划在可预见的未来保留硬盘。
Joh*_*éen 10
dd对磁盘上的分区或任何其他结构一无所知。它无法识别磁盘的“已分配”或“未分配”部分。从dd的角度来看,作为参数给出的设备由一系列块组成。因此,如果您运行dd if=/dev/sda of=/dev/sdb,dd将从 开始的块复制/dev/sda到相应编号的块 上/dev/sdb,直到它读取了所有块/dev/sda或直到它遇到错误。在您的示例中,由于/dev/sdb尺寸小于/dev/sda,dd因此以错误消息“设备上没有剩余空间”(on /dev/sdb)终止。