Windows 8 和 Ubuntu 12.04 双启动噩梦

Windows 8 和 Ubuntu 12.04 双启动噩梦

我已经对如何进行双启动做了一些研究,并且已经很接近了,但是我需要一些关于启动 Windows 8(已安装 Ubuntu)的指导。

我有一台联想 Ideapad y510p。

我将介绍如何对这台预装了 Windows 8 和 Ubuntu 12.04 的笔记本电脑进行双启动:

  1. 我严格按照这里的 97 票回复中的每一个指示进行操作,一切都运行正常,直到修复启动部分之后: 使用 UEFI 安装 Ubuntu 和预装的 Windows

  2. 在修复引导部分后重新启动时,我遇到了以下错误:错误:无效的 arch independent elf magic。此错误(grub 问题)使我无法启动 Ubuntu :(

  3. 经过一番谷歌搜索后,我按照重新激活 grub 2 部分中的说明解决了错误: http://kb.acronis.com/content/1686

  4. 我找到了一个解决 Windows 8 启动问题的可能方法,并尝试了它: http://webcache.googleusercontent.com/search?q=cache:i9JMyXzzRpYJ:askubuntu.com/questions/279275/dual-boot-problem-windows-8-ubuntu-12-04+&cd=1&hl=en&ct=clnk&gl=us&client=ubuntu

  5. 我以为上述解决方案有效,但当我尝试启动 Windows 8 时,出现以下缺少文件错误:

文件:\Boot\BCD

状态:0xc000000e

信息:您的电脑的启动配置数据丢失或包含错误。

以下是一些可能有用的其他信息:

  • 我有 3 个分区专门用于 Ubuntu。

  • 第一个,sda8,有一个标志 bios_grub (1049 kb)。

  • 第二个,sda9,是其他所有内容(96.6 GB)所在的位置。

  • 最后一个,sda10,用于交换(8299 MB)。

我的问题是:如何修复 Windows 8 的启动配置?如能得到任何帮助我将不胜感激 :)

更新 1:当我尝试启动到 UEFI 模式时,出现以下错误:无效的 arch independent elf magic(与我在步骤 2 中看到的错误相同)。

更新 2:我在这里找到了一个有用的链接: 双启动 Ubuntu 12.04:UEFI 和 Legacy

因此,这是我第四次在笔记本电脑上安装 Ubuntu,看起来我需要在 UEFI 模式下安装它。我应该再次放弃一切,然后重新安装吗?或者有什么方法可以挽救我的安装?此时,我甚至无法启动 Windows(尽管我有一张安装 CD 来修复 Windows 启动问题,但这最终会搞砸 ubuntu)。

更新 3:在浏览了更多内容后,我发现了一个很酷的方法来解决这个混乱的 grub 问题,那就是使用 rEFInd。Rod Smith 的帖子拯救了我!

在 uefi 模式下安装 ubuntu 12.04.02

现在,我可以双启动 Windows 8 和 Ubuntu,并启动这两个操作系统:)

我还有另一个问题(与 BIOS 中的启动配置有关),我将将其作为单独的问题发布:)

答案1

公平地说:我并不完全了解其中涉及的机制。不过,在经历了与我的笔记本电脑类似的噩梦之后,我终于意识到我无法将 grub 安装到驱动器太深处;你没有说你尝试了什么分区方案,所以我想这可能也是你遇到的问题。

我所做的是保持 UEFI 结构完整(或者更确切地说,允许 Windows 安装光盘从头开始创建一个新的结构),但我确保有一个小型(200MB)专用分区,位于驱动器开头附近(大约 400MB),Windows 不会管它。(不过,我再怎么强调也不为过,驱动器的分区仍应由 Windows 负责。我的做法是,我完全删除了文件系统,然后创建了一个 400MB 的分区,我的专用分区位于其后,然后删除原始分区,让 Windows 处理剩余的内容。我相信您可以以某种方式简化这个过程,但到了那个阶段,我已经眼花缭乱了。)

然后,在 Windows 完成分配给它的剩余空间的全新安装后(并且在此过程中,在我的分区之前创建必要的 UEFI 结构,然后立即创建 Windows 分区),我在 Ubuntu 安装期间将该分区替换为 ext4 分区并将其挂载为,并/boot在其中安装 grub。此后一切都运行正常(即运行引导修复后)。

答案2

我遇到了同样的问题,我找到了这个程序并修复了双重启动问题。

我尝试在 grub 评论行中执行此操作。我已经完成了论坛上写的所有操作。最后,我下载了这个程序并在终端上运行。

https://help.ubuntu.com/community/Boot-Repair

答案3

我遇到了类似的问题。Windows 正在将启动信息安装到不同的分区。我找到的解决方案是启动我的安装媒体并选择修复(进入 WindowsPE 环境)。从那里,您可以使用键盘快捷键 shift+f10 访问命令提示符。

我发出了以下命令:

bcdedit /enum all

这里列出了 Windows 拥有的所有启动信息及其位置。我确定 Windows 已将启动文件放在另一个分区“D”上

我发出了以下命令:

robocopy d:\Boot c:\Boot /mir /xf bcd.*

从此时起,所有信息都被复制到正确的分区 C。

我们还需要修复 {bootmgr} 设备条目:

bcdedit /store c:\Boot\BCD /set {bootmgr} device partition=C:

您现在应该能够成功启动;重新启动并尝试。我希望这能帮助其他人。

相关内容