我已经使用 CentOS 5 好几年了。我决定升级到 Ubuntu,而且 10.04 刚刚发布,这似乎是个好时机。
我有点偏执,所以我从一组新驱动器开始 - 一个用于安装,一个用于备份,一个作为备用。我删除了现有的 CentOS 5 驱动器,并进行了安装,没有出现任何问题。我安装了服务器版本,并使用了默认的全磁盘 LVM 安装。
接下来,我复制了备份脚本,对其进行了编辑以适应新配置,并进行了测试备份。这也很好。然后是真正的测试,我可以将备份安装到备用驱动器上吗?(我不会将任何重要的东西放在没有可靠备份的系统上,如果我从未进行过恢复,它就不可靠。)
我从系统救援 CD(版本 1.5.3)启动,备用驱动器为 /dev/sda,备份驱动器为 /dev/sdb。分区、配置 LVM、格式化、创建交换或恢复文件系统时没有遇到任何问题。但是当我将 grub 恢复到 MBR 时,我遇到了问题。
我从 CentOS 5 恢复的说明说运行 grub,然后输入两个命令:
根(hd0,0)设置(hd0)
第一个命令退出并出现错误:“检查 /boot/grub/stage1 是否存在...不存在”
我进行了一些 Google 搜索,发现最近的 Ubuntu 中包含的 Grub2 与 CentOS 5 中包含的 Grub 0.97 有很大不同。一个网站建议我使用:
grub-install --root-dir=/mnt/restore /dev/sda
这似乎有效,但是当我从驱动器启动时,我最终进入了 grub 提示符。
关于我需要做什么有什么想法吗?这似乎是一个简单的问题,但我在网上搜索答案的尝试却被对旧版 Grub 的引用所淹没。
非常感谢您的帮助。
答案1
我恢复的驱动器上具有所有正确的 grub 安装和配置,我只是需要将它们放到可以执行的地方。
我从 Ubuntu 安装 CD 启动,选择“救援”,然后将我的新根目录设置为根目录,并在该目录中启动一个 shell。
然后我挂载 /boot,并运行 update-grub 和 grub-install,一切正常。