将 Ubuntu 10.04 安装到外部硬盘会覆盖内部硬盘的 MBR

将 Ubuntu 10.04 安装到外部硬盘会覆盖内部硬盘的 MBR

我有一个华硕 A42F笔记本电脑Windows 7 32 位安装在其内部硬盘上。

我刚刚安装Ubuntu 10.04使用笔记本电脑将硬盘驱动器连接到便携式硬盘驱动器。现在我的笔记本电脑无法启动Windows 7的如果便携式硬盘断开连接。我只有在连接便携式硬盘时才能获得启动菜单。

当连接到另一台计算机时,便携式硬盘无法启动。

请帮助我,我想要:

  • 从内部驱动器启动 Windows,无需 GRUB
  • 通过 BIOS 启动菜单(F8 或 F12)从外部驱动器启动 Ubuntu

答案1

您已在外部硬盘上安装了 Ubuntu,但可能已将其引导加载程序 (GRUB) 安装到内部硬盘上。据我发现,这是 Ubuntu 10.04 安装程序中的一个错误。

GRUB 安装到 /dev/sda,而 10.04 安装程序选择安装到 /dev/sdb

为了验证,在没有外部硬盘的情况下启动时,显示的错误消息将如下所示: 由于缺少硬盘,GRUB 抛出错误

的背景

如果我没记错的话,GRUB 和 GRUB2 由两个阶段组成:

  1. 主引导记录 (MBR) 中的引导加载程序的初始代码
  2. 卷引导记录中的引导加载程序

在这种情况下,GRUB 的第一阶段位于内部驱动器的 MBR 中,但第二阶段位于安装 Ubuntu 的分区中。如果我们删除 Ubuntu 驱动器,则会收到上述错误消息。

1. 修复 Ubuntu 引导加载程序

10.04/Gnome 2 中的系统监视器快捷方式

系统监视器中显示的根文件系统及其设备 ID

启动 Ubuntu,打开系统监视器并查找根目录 ( / ) 下的条目文件系统,记下设备。设备ID遵循以下命名方案:

/dev/sd[a_letter_from_a_to_z][分区号]

我们不需要分区号,因此您的设备 ID 应如下所示:/dev/sdb。太好了,现在我们知道 Ubuntu 安装在 Linux 中的哪个硬盘上,我们可以在那里安装它的引导程序。现在,打开终端并输入以下命令:

sudo grub-install [your_device]
sudo update-grub

不用说,[your_device] 必须替换为您的设备,在此示例中为 /dev/sdb。

2. 在没有 Windows 安装盘的情况下修复 Windows 7 引导加载程序

由于你可以启动 Windows,而大多数人手头没有 Windows 安装盘,因此我们下载并安装易BCD. 点击名为免费下载,仅限非商业用途然后只需按下下载按钮即可。不要害怕,使用此工具无需注册,也无需购买。我建议此时断开外部驱动器。启动 EasyBCD 并在BCD 部署选择将 Windows Vista/7 引导加载程序安装到 MBR并按下按钮写入MBR。 你完成了!

EasyBCD 中的 BCD 部署选项下显示“写入 MBR”按钮

2.1. 使用 Windows 安装盘修复 Windows 7 引导加载程序

请务必:断开外部驱动器!现在,启动 Windows 7 安装盘并按照以下操作方法操作:http://www.howtogeek.com/howto/32523/how-to-manually-repair-windows-7-boot-loader-problems/

相关内容