三重启动问题:XP x Seven x Ubuntu

三重启动问题:XP x Seven x Ubuntu

这是我一周前的高清设置:

sda1: EXT4 => / (Ubuntu root)
sda2: NTFS => Windows XP C:
sda5: EXT4 => /home
sda6: SWAP
sda7: NTFS => All my files like music videos etc
sda4: Blank

一切都很顺利。然后我将 XP 更新到 Seven。
很好!几乎 100% 正常工作,但我的网络摄像头无法像在 XP 上那样工作。
所以我想:“是时候在最后一个分区中安装 XP 了!”
所以我就这么做了。

sda2: NTFS => Windows 7 C:
sda4: NTFS => Windows XP G:

我当然知道 XP 会毁掉我的 GRUB。
我的战争就此开始。

我尝试过两次按照我所知道的方式恢复我的 GRUB(liveCD >> chrootgrub-install,但都没有成功。所以我在 Ubuntu-wiki 上读到,不要使用grub-install,而是键入grub并手动执行操作...类似于root (hd0)setup (hd0,0)
然后 grub 出现了。很好,然后。
我做了menu.lst这样的事情:

[ubuntus]
hd(0,1) Windows 7
hd(0,3) Windows XP

不知为何,当我尝试打开第二个条目时,它启动了 WXP。如果我尝试打开第三个条目,它会给我一个错误,类似于“NTDLR 缺失”

所以我想“如果从头开始做这件事的最好方法是XP > 7 > Ubuntu,所以让我们修复 XP 启动,然后是 7,然后是 GRUB。

进入 XP 安装 CD 命令行,执行fixbootfixmbr
顺利启动到 XP。
进入 Seven Rescue 选项,但当我要求重建引导加载程序时,它无法识别 XP。有这样的文字“如果它不起作用,您可以再试一次”。所以我试了。重新启动。
有一个奇怪的七个引导程序为我提供了以下选项:

  • Ubuntu 9.04(Ubuntu 到底在干什么视窗引导加载程序?!)
  • Windows 7的
  • Windows XP

最终结果:

  • Windows 7 启动
  • Windows XP 向我抛出了同样的 NTDLR 错误
  • Ubuntu 说有一个奇怪的 2005 年引导程序启动了我的分区。但我认为,如果它真的有效,就不会对我的 EXT4 分区这样做。

关于如何使用这 3 个选项 (或类似选项) 获取我的 GRUB 有什么想法吗?

[更新]
在使用 Ubuntu Live CD、SuperGrub CD、Windows CD 和尝试使用 EasyBCD 之间遇到很多麻烦之后,我花了 2 天时间才找到一个 Grub,其中包含 Ubuntu 和“Windows 菜单”选项,可以加载 EasyBCD 菜单。总比没有好……
但我的 ubuntu 加载不正确。
它说Boot from (hd0,0) ext4 <<uuid of sda1>>
一段时间后它会加载 Ubuntu 图形加载器。到目前为止一切正常。它的栏一直在跳动,一段时间后它会在黑屏上显示以下内容:

放弃等待根设备。常见问题:
- 启动参数 (cat /proc/cmdline)
* 检查 rootdelay=
* 检查 root=
- 缺少模块
ALERT!/dev/disk/by-uuid/<<same uuid as before>> 不存在。转到 shell!

然后它打开了 busybox...
我尝试在正确的位置(我的 sda1 上的 /dev/disk/by-uuid)创建一个具有该 uuid 的文件,就像其他文件一样:符号链接。之后我尝试再次启动 ubuntu... 同样的问题是,我在 busybox 中找不到新的
uuid。oO

现在发生什么事了?=(

答案1

在设计 PC 时,其顺序应该是:

  1. MBR——选择要启动的分区(分区表中标记为活动的分区)。

  2. 从该分区启动。

您的机器上存在以下几个问题:

  1. Windows 在选择从哪个分区启动时有点笨拙。因此,Windows XP 和 Windows 7 都尝试从 Windows 7 分区启动。应将 XP 启动文件从 Windows 7 分区复制到 Windows XP 分区。

  2. GRUB 不遵循标准,忽略活动分区。

我会尝试让每个操作系统从其自己的分区启动,然后设置 Grub,以便您有一个不错的菜单来选择从哪个分区启动。为了解决您的问题,我认为您必须:

  1. 将 Windows XP 分区标记为活动分区(使用磁盘管理或实时 CD 上的 fdisk)。

  2. 从 Windows XP CD 运行 fixboot 和 fixmbr 命令。确保此分区的根文件夹中现在有 boot.ini、ntdetect.com 和 ntldr 文件。

    现在您应该可以顺利启动 XP。

  3. 将 Windows 7 分区标记为活动分区。

  4. 从 Windows 7 CD 运行 Windows 7 启动恢复程序。

    Windows 7 这次应该会选择 XP(或者可能不会,因为 sda3 是扩展分区,而 sda4 在它后面 - 不用担心)。

  5. 使用 Ubuntu CD 在 /(sda1) 上安装 Grub。这可确保以后对 Windows 进行任何操作时无需覆盖 Grub。

  6. 仍在 Live CD 上时,使用 fdisk 将 sda1 标记为活动。

你现在可以启动 Ubuntu 并进行整理menu.lst

或者使用 EasyBCD。

答案2

是的,因为没人回答我更新的问题,所以我就此结束。
我通过将 EasyBCD 作为 Windows 菜单并将 GRUB 作为第一个菜单解决了三重启动问题,这样我就可以在 ubuntuses 和 Windows 菜单之间进行选择。

相关内容