我熟悉使用 rsync 从我的系统备份各种文件,但完全恢复机器的最佳方法是什么。
我过去尝试过的方法如下:
- 从 Fedora 安装盘执行基本格式化/重新安装
- 确保已启用网络
- 将 rsync 备份中的所有内容复制到新安装的系统上
这种方式确实可行,但我不认为之后安装的每个包都能 100% 正常工作。
我希望能够以最少的努力恢复我的系统,并且一切工作都与备份时一样。此外,如果可能的话,安装到其他机器上,并且基本上有两台具有相同软件包和数据的机器。
答案1
这是我所做的(假设单个磁盘,位于 /dev/sda)
使用 dd 备份 MBR 和分区表:“dd bs=512 count=1 if=/dev/sda of=/backups/sda.layout”
使用 rsync 复制整个内容,例如:“rsync -axvPH --numeric-ids ...”
在恢复时我这样做:
使用以下方式启动目标机器系统救援,我通常会将“sda.layout”文件放在 USB 记忆棒上。
使用 dd 恢复 MBR/分区表:“dd bs=512 count=1 if=/path/to/sda.layout of=/dev/sda”
使用 partprobe(感谢评论者马克)让内核重新读取分区表。
将所有不同分区挂载到 /restore/ 下。我将挂载点设置为与 restore 下相同,因此,如果我的源上有 /boot、/var,则最终会得到 /restore/boot、/restore/var 等。
使用 rsync 恢复整个内容。
答案2
我从来不会完全克隆系统。你永远不知道会发生什么变化,而且一旦发生更改,你的系统克隆映像就已经过时了。最好的方法是建立一个程序,让你可以生成功能相同的系统。一种可能性是使用 Kickstart、AutoYaST 或类似工具。妥善备份你的配置,最好使用配置管理系统(如 Bcfg2、Puppet 或 CFEngine)来配置一切,而不是手动配置。这样,当你需要创建一个与现有系统类似的新系统或重新创建现有系统时,这是一个简单且定义明确的过程。
答案3
答案4
我一直认为 Gentoo 安装新系统的方式(从备份或其他方式)是最好的,因为它很简单。
- 创建可工作的最小系统。
- 将工作系统作为 livecd 中的硬盘加载。
- 将文件系统打包并保存在某处。
- 使用 livecd 加载目标系统。
- 准备目标硬盘并安装它。
- 解压至已安装的硬盘。
- 进入 chroot。
- 设置引导加载程序和其他与系统相关的内容。
- 重启即可。
- 根据需要安装新软件/复制用户文件夹/添加其他文件。