通过网络克隆磁盘

Mar*_*ada 5 networking hard-drive clone disk-cloning

我需要将一台笔记本电脑的驱动器克隆到另一台基本相同的驱动器。

它们是 M.2 PCIe 驱动器,所以即使我想打开笔记本电脑,我目前也找不到它们的 USB 连接器。

因此,我需要将源映像到外部驱动器,然后在新计算机上播放该映像。

为几乎 1 TB 的数据执行此操作确实需要相当长的时间 - 而且我还必须为图像找到空间。

如何在不创建映像的中间副本的情况下通过网络将源笔记本电脑克隆到目标笔记本电脑?我可以在两台笔记本电脑上启动到 USB。

Att*_*tie 5

无需为图像寻找存储空间 - 只需加载 Linux Live CD(或 U 盘),然后使用netcat.

在已设置并准备就绪的计算机上,运行:

sudo dd if=${SOURCE_DISK} bs=4M | gzip | nc -l 27015
Run Code Online (Sandbox Code Playgroud)

然后,在将接收图像并成为克隆的计算机上,运行以下命令...(我觉得我应该注意这将破坏所有数据的强制性)

nc ${IP_OF_SERVER} 27015 | gzip -d | sudo dd of=${DEST_DISK} bs=4M
Run Code Online (Sandbox Code Playgroud)

在这里,${SOURCE_DISK}并且${DEST_DISK}需要被交换的相关磁盘-例如:/dev/sda/dev/nvme0n1

另外,${IP_OF_SERVER}需要替换为第一台电脑的IP。

这将直接在两个 M.2 驱动器之间传输数据。


对于加分,你可以替换源ddpv保持眼睛的进展...或发送SIGUSR1dd实例A-穷人的更新。


笔记:

  • 这不包括您可能需要对(未指定的)操作系统进行的任何修改……Windows 可能对激活很挑剔,而 Linux 可能对网络接口之类的东西感到怀旧……
  • 如果目标 SSD 小于源,则此基本方法不适用。
  • 如果您只对特定分区感兴趣,请检查大小,并在设备名称上使用p1/ p2/ etc...的后缀。