Clonezilla 恢复硬盘镜像教程:把备份镜像还原到目标硬盘

整理 Clonezilla Live 官方 Restore disk image 流程:从本地磁盘或 U 盘挂载镜像仓库,选择 restoredisk,把已有 Clonezilla 镜像恢复到目标硬盘。

Clonezilla Live 不只能做硬盘对拷,也可以把之前保存好的磁盘镜像恢复到一块硬盘上。官方文档的例子是:镜像保存在第二块磁盘 sdb 上,把镜像 bookworm-2023-10-15-03-img 恢复到第一块磁盘 sda

官方文档地址: https://clonezilla.org/fine-print-live-doc.php?path=clonezilla-live/doc/02_Restore_disk_image

这类操作适合系统恢复、批量装机、实验环境回滚、把备份镜像恢复到新硬盘。和普通文件复制不同,restoredisk 会恢复整块磁盘结构,包括分区表、启动相关信息和各分区数据。

先确认风险

恢复镜像前,先确认这几件事:

  1. 目标盘上的数据会被覆盖。
  2. 镜像文件必须完整可读。
  3. 目标盘容量应满足镜像恢复要求。
  4. 源镜像和目标盘不能选反。
  5. 如果是系统盘,恢复后可能涉及 BIOS/UEFI 启动顺序。

Clonezilla 会在真正写入前要求确认两次。不要把这两次确认当成形式,尤其是在机器上同时插着多块硬盘或 U 盘时。

示例场景

官方示例里有两块盘:

设备 作用
sda 目标盘,要被恢复的第一块硬盘
sdb 保存 Clonezilla 镜像的第二块硬盘

镜像目录名是:

1
bookworm-2023-10-15-03-img

Clonezilla 镜像目录里通常会包含分区镜像、分区表、磁盘信息、硬件信息和恢复所需的元数据。官方示例里可以看到 sda-mbrsda-gpt-1stsda-gpt-2ndsda1.vfat-ptcl-img.zstsda2.ext4-ptcl-img.zst 等文件。

这些文件不要手动改名、移动或删除。恢复时应该选择整个镜像目录,而不是只选某一个压缩文件。

启动 Clonezilla Live

先用 Clonezilla Live U 盘、光盘或其他启动介质启动电脑。

如果需要,可以在 BIOS/UEFI 里把 USB 或光驱设为第一启动项;也可以在开机时按主板启动菜单快捷键,比如 EscF8F9F12,不同机器不一样。

进入 Clonezilla Live 启动菜单后,默认的 800x600 模式通常够用。如果显示异常,可以尝试安全图形模式;如果是高分屏,带大字体的模式更容易看清。

进入恢复流程

进入系统后,按顺序选择:

  1. 选择语言。
  2. 选择键盘布局,普通美式键盘可以保持默认。
  3. 选择 Start Clonezilla
  4. 选择 device-image

device-image 表示从镜像备份或恢复,而不是直接硬盘对硬盘克隆。上一篇硬盘对拷用的是 device-device,这里不要选错。

Clonezilla 后续菜单里有些项目需要用空格键选择。官方文档提醒:当有多个选项可选时,需要按 Space 标记,被选中的项会出现 *

选择镜像仓库

接下来选择镜像保存在哪里。

官方示例选择:

1
local_dev

local_dev 适合镜像放在本机第二块硬盘、移动硬盘或 U 盘上的情况。选择后,Clonezilla 会扫描本机磁盘和分区。如果你刚插入 U 盘或移动硬盘,可以等几秒让它识别出来。

看到设备出现在扫描列表后,按 Ctrl-C 退出扫描报告,继续下一步。

如果镜像不在本地设备上,也可以根据环境选择其他方式,例如 sshfs、samba、nfs、WebDAV、S3 或 OpenStack Swift。普通个人恢复场景,local_dev 最直观。

挂载镜像所在分区

官方示例选择 sdb1 作为镜像仓库,也就是第二块磁盘的第一个分区。

这里要注意 Linux 设备名:

名称 含义
sda 第一块硬盘
sda1 第一块硬盘的第一个分区
sdb 第二块硬盘
sdb1 第二块硬盘的第一个分区

如果你的镜像放在 U 盘或移动硬盘上,它可能不是 sdb1,也可能是 sdc1sdd1。一定要结合容量、文件系统、设备型号来判断。

Clonezilla 会询问是否检查该文件系统。官方示例里跳过了检查,但如果你怀疑镜像盘有问题,先检查会更稳。

然后选择镜像目录所在位置。如果镜像就在该分区根目录,选择 /,用 Tab 切到 Done,再按回车继续。

选择 restoredisk

挂载镜像仓库后,Clonezilla 会显示磁盘使用情况。接着选择:

1
Beginner

然后选择:

1
restoredisk

restoredisk 是把一个磁盘镜像恢复成整块硬盘。它和只恢复某个分区的模式不同,适合系统盘整盘恢复。

如果你只想恢复单个分区,不应该选 restoredisk,而要选择对应的分区恢复模式。

选择镜像和目标盘

接下来先选择源镜像,例如官方示例里的:

1
bookworm-2023-10-15-03-img

然后选择目标硬盘,例如官方示例里的:

1
sda

这一步最危险。源镜像是要读取的备份,目标盘是要被覆盖写入的硬盘。

建议你在确认前检查三遍:

  1. 镜像名称是不是你要恢复的那份。
  2. 目标盘容量和型号是否正确。
  3. 目标盘上是否还有未备份的数据。

分区表和镜像完整性

Clonezilla 会询问目标盘分区表如何创建。

官方文档提到两个方向:

  1. 使用镜像里的分区表。
  2. 按比例在目标盘上创建分区表。

如果镜像来自较小硬盘,而目标盘更大,按比例创建分区表可能更方便。但这类选择会影响最终分区布局,不确定时不要随便改。

接着 Clonezilla 会询问是否在真正恢复前检查镜像完整性。官方建议检查镜像,因为你无法只凭目录存在就判断镜像是否损坏。

如果你非常确定镜像完整,可以选择 -scr 跳过检查。但对大多数恢复场景,我更建议先检查,特别是镜像来自移动硬盘、网络存储或保存时间很久。

开始恢复

确认选项后,Clonezilla 会显示将要执行的恢复命令。这个命令对自定义 Clonezilla Live 或复现批量恢复流程很有用。

如果你选择了检查镜像,Clonezilla 会先检查镜像。检查通过后,真正写入前会要求你确认两次。

恢复过程中,Clonezilla 会把镜像写回目标盘,通常包括:

  1. MBR 和启动加载器。
  2. 分区表。
  3. 每个分区或逻辑卷的数据。

不同文件系统可能使用不同工具恢复,例如 partclonentfsclonepartimagedd。普通用户不需要手动选择这些工具,只要确认前面的镜像和目标盘正确。

完成后怎么做

恢复完成后,Clonezilla 会让你选择下一步:

  1. 关机。
  2. 重启。
  3. 进入命令行。
  4. 重新开始。

如果这是系统盘恢复,通常建议先关机,再移除 Clonezilla 启动介质和镜像盘,最后从目标盘启动。

启动后检查:

  1. 系统是否能正常进入。
  2. 分区是否符合预期。
  3. 关键数据是否存在。
  4. BIOS/UEFI 启动项是否指向正确硬盘。

如果恢复后无法启动,先不要急着重做。检查启动模式是否一致,例如原系统是 UEFI 还是 Legacy BIOS,目标机器的启动顺序是否正确,ESP 分区是否存在。

简短建议

用 Clonezilla 恢复硬盘镜像时,记住这条线:

1
device-image -> local_dev -> 选择镜像仓库 -> Beginner -> restoredisk -> 选择镜像 -> 选择目标盘

真正需要花时间确认的是:

  1. 镜像仓库选对了吗?
  2. 镜像目录选对了吗?
  3. 目标盘选对了吗?
  4. 是否需要检查镜像完整性?
  5. 目标盘数据是否已经备份?

这些确认做完,再执行 restoredisk,风险就会低很多。

记录并分享
使用 Hugo 构建
主题 StackJimmy 设计