第 14 章 · 整机恢复(Linux)
适用对象:交付工程师、备份管理员 · 阅读约 12 分钟 · 对应产品界面版本 v1.2.0
整机恢复是把一台 Linux 主机的系统盘连同引导一起写回到一台新的目标机上。和文件级恢复不同,它不在原系统里进行,而是让目标机从恢复介质启动,在一个独立的恢复环境里完成分区重建、数据回写和引导修复。
读完这一章你会做:
- 判断什么时候该用整机恢复,什么时候用文件级恢复就够
- 从恢复介质启动目标机,配置网络并连上备份服务端
- 核对原机卷与目标磁盘的映射关系,确认覆盖范围后执行恢复
- 在恢复完成后检查引导、网络和文件系统,完成业务验收
恢复方式的位置
整机恢复是两条恢复路径之一。先看清楚它在整个恢复流程里的位置:

两条恢复路径共用前段的请求与还原点选择,也共用后段的执行观察与业务验收,差别只在中间那一步。
| 场景 | 用哪条路径 |
|---|---|
| 误删文件、误改配置,系统本身还能启动 | 文件级恢复(见第 12 章) |
| 系统盘损坏、主机无法启动、需要换一台机器承载 | 整机恢复(本章) |
备份任务显示成功,只说明数据写入完成,不代表这份数据一定能恢复出一台可启动的主机。恢复正确性必须单独验证。正式交付前务必按第 15 章做一次完整演练。
开始之前
| 前置项 | 说明 |
|---|---|
| 恢复介质 | 已按第 13 章制作完成,且介质版本与备份数据版本兼容 |
| 目标机 | 磁盘容量不小于原机对应卷;固件类型(BIOS / UEFI)与原机一致 |
| 网络 | 目标机在恢复环境里能访问备份服务端与存储库 |
| 还原点 | 已在控制台确认要恢复的还原点及其对应主机与日期 |
恢复过程会重建目标磁盘的分区表与卷组,磁盘上的原有数据全部清除。执行前确认目标机选对了,尤其是在同一台宿主机上有多台同名虚拟机时。
先看一遍完整过程
下面是一次完整的 Linux 整机恢复实录,时长 9 分 44 秒,环境为 FusionCompute 上的 CentOS 7 虚拟机。建议先整段看一遍,再照着后面的步骤操作。
录像取自实验环境,画面中出现的 IP、主机名与虚拟机名称均为该环境的真实取值,不要照抄。本章正文中的示例值另行给出(如 192.0.2.x)。
另外,画面左上角的录制计时器比视频本身的播放时间快约 29 秒。下表的时间点以播放进度为准,直接拖动到对应位置即可,不要按画面上的计时器找。
| 时间 | 这一段在做什么 | 对应下文步骤 |
|---|---|---|
| 00:00 | 在 FusionCompute 上创建承载恢复的目标虚拟机,设置规格与端口组 | 准备目标机 |
| 01:00 | 把恢复介质 ISO 挂载到目标虚拟机的光驱 | 步骤 1 |
| 01:30 | 从介质启动,进入恢复环境的引导菜单 | 步骤 2 |
| 02:45 | 配置恢复环境网络:网卡、IP、子网掩码、网关、DNS | 步骤 3 |
| 03:00 | 打开磁盘分配向导,核对原机卷与本机磁盘的对应关系 | 步骤 4 |
| 03:20 | 重建目标磁盘的分区表与卷组并格式化 | 步骤 5 |
| 04:00 | 开始回写数据,日志出现 Start restoring data | 步骤 5 |
| 07:30 | 备份 /etc/fstab、绑定挂载 /dev /proc /sys /run、进入 chroot 重建 initramfs | 步骤 5(自动) |
| 08:20 | 在 chroot 内安装 grub2 并生成引导配置,随后卸载各挂载点 | 步骤 5(自动) |
| 08:40 | 恢复环境关机,提示移除介质后按回车 | 步骤 6 |
| 09:05 | 目标机以 CentOS 7 启动,出现登录提示符 | 步骤 7 |
操作步骤
步骤 1 · 把恢复介质挂载到目标机
- 在虚拟化平台上打开目标虚拟机的设置,挂载第 13 章制作的恢复介质 ISO。
- 把光驱设为第一启动项。物理机则插入写好介质的 U 盘并调整固件启动顺序。
目标机的固件类型(BIOS 或 UEFI)要和原机相同。选错会导致数据恢复成功、但系统无法引导,而且这个错误要到最后重启时才会暴露。
步骤 2 · 从介质启动进入恢复环境
- 启动目标机,在引导菜单中选择第一项
Live system并回车。 - 等待恢复环境加载完成,出现恢复工具的图形界面。
恢复环境是一个独立的小型 Linux 系统,与被恢复的操作系统无关,它只负责连接备份服务端并把数据写回磁盘。
步骤 3 · 配置网络并连通备份服务端
- 在「网络设置」页选择承载恢复流量的网卡(多网卡时不要选错)。
- 依次填写 IP 地址、子网掩码、网关、DNS,例如
192.0.2.50/255.255.255.0/192.0.2.1。 - 点「应用配置」,观察「网络状态」一行。
- 进入连通性测试页,填写备份服务端地址与端口,确认能够连通后再继续。

「下一步」是灰的——网络没通就走不下去,这一页是整个恢复流程里第一道硬卡点。
步骤 4 · 核对卷映射关系
磁盘分配向导会左右对照列出原机的卷和本机可用的磁盘,包括设备名、容量、类型、文件系统和挂载点。
- 逐行核对原机卷与目标磁盘的对应关系,重点确认根卷和
/boot。 - 确认目标磁盘容量不小于原机对应卷。
- 确认无误后提交,界面会再次弹出确认框要求你确认覆盖目标磁盘。
确认之后目标磁盘立即开始重建分区,无法撤销。确认框里会写明要把哪台原机的数据恢复到本机哪块磁盘,逐字读一遍再点确定。
步骤 5 · 执行恢复
提交后恢复自动进行,界面显示进度条与滚动日志。整个过程无需干预,依次经过:
- 重建目标磁盘分区表与卷组,格式化各卷。
- 回写数据。日志出现
Start restoring data表示进入数据传输阶段。 - 处理系统差异:备份并改写
/etc/fstab、绑定挂载/dev/proc/sys/run。 - 进入 chroot 重建 initramfs、安装 grub2 并生成引导配置。
- 卸载全部挂载点。

日志第二行 /dev/vda5 <- /dev/vda1:箭头两端的设备名不一样。这不是笔误,见下方提示。
日志里每一行 目标 <- 源 就是一条卷映射。上图中根卷与 swap 的两端同名,但第一行是 /dev/vda5 <- /dev/vda1——目标机上的设备编号与原机不同是正常的,恢复环境按你在步骤 4 里核对过的映射关系回写,不要求设备名一一对应。
反过来说,这也意味着步骤 4 的核对不能靠"名字看起来一样"来偷懒。真正要确认的是容量、文件系统和挂载点。
录像里出现过日志已经在执行 grub2 安装和卸载挂载点(属于收尾动作),进度条却仍显示不到 50% 的情况。以日志内容判断阶段,不要以百分比判断。确认完成要看日志出现恢复完成提示且界面允许重启。
大容量或多卷场景耗时较长,应预留足够的维护窗口。恢复期间目标卷处于锁定状态。
步骤 6 · 退出恢复环境
- 恢复完成后按界面提示重启。
- 恢复环境关机过程中会提示移除介质,先把 ISO 卸载或拔掉 U 盘,再按回车。
- 把固件启动顺序改回从硬盘启动。
介质没有移除时,机器会再次从恢复介质启动,回到恢复环境。
步骤 7 · 验收
目标机启动后出现登录提示符,只说明引导成功,还要逐项确认:
# 引导与内核
uname -r
# 文件系统与挂载点是否与原机一致
df -h
lsblk
# fstab 是否引用了正确的设备标识
cat /etc/fstab
# 网络
ip addr
ping -c 3 <网关地址>
再登录业务系统确认数据与应用可用。完整的验收口径见第 15 章。
常见问题
恢复完成后机器起不来,停在引导阶段。 多数是引导模式不一致或引导未写入目标磁盘。核对目标机固件类型是否与原机相同,必要时从恢复介质重新启动并重做引导修复。
启动后进入紧急模式(emergency mode)。
通常是 /etc/fstab 里引用的磁盘 UUID 与恢复后的实际值对不上。从恢复介质启动,挂载根卷后核对并修正 fstab。
恢复后网卡不通。
网卡命名规则可能随硬件变化而改变(例如从 eth0 变成 ens1)。用 ip addr 看实际网卡名,再更新网络配置文件。
原机用了 LVM,恢复后卷组认不出来。 确认目标机上不存在同名卷组。卷组重名会导致激活失败,需要提前规划命名。
能不能恢复到硬件配置完全不同的机器上? 属于异机恢复场景,取决于驱动是否齐备。源文档对此有单独结论,见第 15 章。