是否可以在不同大小/型号的 SSD 之间成功克隆(使用 dd)Linux 操作系统磁盘?

是否可以在不同大小/型号的 SSD 之间成功克隆(使用 dd)Linux 操作系统磁盘?

我在一块相当旧的 SSD 上安装了 CentOS。SSD
在系统日志中显示硬件问题。

我怀疑以下问题的答案是,特别是由于超级块和引导扇区的位置,但是 -

是否可以在不同大小/型号的 SSD 之间成功克隆(使用 dd)Linux 操作系统磁盘?

具体来说,可以这样做吗?

$ dd if=/dev/oldSSD of=/dev/newSSD bs=64K conv=noerror,sync

答案1

应该只要新的 SSD 更大就没问题,或者至少与旧 SSD 大小相同……您需要在字节级别比较容量,“500 GB“磁盘的容量不一定与另一个磁盘完全相同”500 GB“ 磁盘

然而,需要注意以下事项:

  • 不要挂载源文件系统,或者至少以只读方式重新挂载所有内容。
  • 旧 SSD 损坏或读取错误 - 大多数文件系统无法确定文件内容是否损坏或不正确。
  • 文件系统与底层存储中的页面大小或对齐 - 例如,如果旧 SSD 有 2 kB 页面,而新 SSD 有 16 kB 页面。
  • 一旦完成克隆,您可能需要调整分区和文件系统的大小以使用任何额外的空间。
  • 如果是旧磁盘,则很可能是旧操作系统……您确定全新安装现代版本不是更好的解决方案吗?您以后仍然可以从旧 SSD 中提取数据。
  • 磁盘和文件系统 ID 将相同,这可能会在尝试处理新/旧数据时导致问题 - 例如,参见tune2fs -U randomext2/3/4 文件系统。

如果您对源磁盘有怀疑,我可能会建议您ddrescue,并确保您保留日志文件。

将传递的块大小增加到dd约 4 - 8 MB 可以显著减少时间,这既是因为系统调用减少,也是因为匹配目标 SSD 的擦除块大小。它还可能减少目标 SSD 的磨损。

相关内容