dd if=/dev/sda of=/dev/sdb ibs=512 obs=4096

    dd if=/dev/sda of=/dev/sdb ibs=512 obs=4096

我有一个 nvme 驱动器,其逻辑和物理扇区大小均为 4096。blockdev --getbsz命令报告的该驱动器的块大小也是 4096。

目标驱动器是逻辑和物理扇区大小为 512 的 SSD。该驱动器的块大小为 4096。

我尝试使用 dd 和以下参数来克隆驱动器:

dd if=/dev/sda of=/dev/sdb

但我得到的唯一分区是 GPT 分区。

我还尝试使用这些命令克隆 GPT 表:

sgdisk

sfdisk

但没有运气。我得到一个带有分区表的驱动器,其中每个分区都比原始驱动器中的分区小 8 倍。

你有什么建议吗?

答案1

GPT 和 MBR 使用扇区号来分配分区。您需要在新磁盘上创建新的 GPT 表,其分区大小(以字节为单位)与旧磁盘上的分区相同。然后,​​您可以将每个分区从旧磁盘复制到新磁盘:

dd if=/dev/sda1 of=/dev/sdb1 ibs=4096 obs=512 bs=16M

答案2

我认为您应该为“dd”实用程序指定“ibs”和“obs”参数。例如

dd if=/dev/sda of=/dev/sdb ibs=512 obs=4096

答案3

我无法对提及该命令的消息添加评论dd,但正如手册页所说不要使用 bs 参数 obs 和/或 ibs bs 将覆盖它们。

相关内容