错误:分区表需要一个单独的分区用于引导加载程序代码(EFI问题)

问题

我正在尝试在我的13英寸MacBook Pro (型号7,1。2010年中)安装Ubuntu 12.04(64位,Mac备用) .MacBook Pro正在运行OSX 10.8.3并且我正在尝试制作它双启动(即,我可以启动到Ubuntu或OSX)。当从Live CD启动并选择“试用Ubuntu”时,我制作了所谓的必要分区表并准备安装。通过安装过程,我选择了我的新创建的“ext4”分区,将其(在安装程序中)更改为“Use as ext4 journaling file system”,然后按下继续。但是,弹出以下窗口:

磁盘上使用的分区表格式通常要求您为引导加载程序代码创建单独的分区。应将此分区标记为“保留BIOS引导区域”,并且其大小至少应为1 MB。请注意,这与在/ boot上引导的分区不同。如果您不返回分区菜单并更正此错误,则引导加载程序安装可能会在以后失败,尽管仍可以将引导加载程序安装到分区。

下面是GParted中我的分区表的快照。

GParted分区表设置

以下是安装窗口的快照。

安装窗口


假设

@Seth和我正在考虑这是一个问题,Ubuntu没有检测到我的电脑使用EFI而不是BIOS。 我认为,如果我们以某种方式让Ubuntu认识到我正在运行使用EFI的计算机,安装将运行得更顺畅。 但是,因为我在MacBook Pro上运行,与Windows有类似问题的用户将无法使用相同的解决方案(或其他未来的问题)。


事情经过审查和调查

以下是我尝试过的内容。 随着这个问题的进展,我会更新它。

  1. 我已经尝试过研究这个问题,并且也遇到了这个问题。 然而,在与聊天室里的人讨论这个问题之后,我 – 我们 – 非常确定这是一个硬件问题。
  2. 另外,我试过这个wiki ,但是wiki看起来面向Windows,而且我很确定这是一个特定于硬件的问题。 更新:我继续尝试我链接的部分,并没有完全锻炼。 按照说明操作时,我无法点击“GRUB位置”选项卡,因为它已被禁用: grub位置已禁用
  3. 另一个未经validation的选项@Seth和我过去了绕过错误,然后运行上面列出的启动修复程序。 不过有人担心这会很危险,所以我很高兴听到另一种意见。
  4. 我尝试过@ rod-smith提供的解决方案。 但是,正如他对答案的评论中所表明的那样,我遇到了一些问题。 在步骤10中尝试备用步骤时,启动只是让我得到一个不会消失的空白屏幕(我在该屏幕上花费的最近一段时间是大约40分钟,直到我重新启动)。 继续按照说明操作,在步骤18显示之前(它从未执行过),我收到以下错误:

    警告:操作系统无法使用控制台
    错误:找不到合适的video模式。
    (见图)

  5. 通过我在第四项(上面)中的说明保持分区/所有设置的设置,我尝试了上面第二项中的链接,因为安装了GRUB。 我可以访问菜单,然后浏览了所有需要完成的工作。 但是,重启后,我遇到了无限期的空白屏幕。

  6. 根据@TheMysteriousMan的post,我也尝试选择/dev/sda1来安装启动加载程序,但是我收到了同样的错误。

  7. Ubuntu 13.04(64位,Mac备用)也已经尝试过了,但同样的错误也收到了。

  8. 我注意到的一点是,当双击一个分区时(在本帖的第3张照片中看到的安装过程中)并打开“编辑分区”窗口,在“使用为:”下拉(选项中)比如“Ext4 journaling file system”出现了,我有“预留BIOS启动区域”选项。 我想知道错误是否要求我对选项做些什么。 如果它要求我使用此选项,我应该创建一个新分区并在其上设置此选项吗? 分区应该有多大? 或者我把它放在现有的分区上?


TLDR和问题

这里的主要问题是:如何通过此错误消息获取? 是否有一些我必须做的配置,我还没有? 或者这是一个安全的错误消息绕过?

请按照以下说明阅读整个答案。

要解决此问题,您需要创建一个额外的分区。

  1. 在Ubuntu中安装rEFIt或rEFInd 1
  2. 启动Mac OS X.
  3. 启动OS Disk Utility应用程序。
  4. 确保已经调整了“Macintosh HD”分区的大小,以便为新分区留出空间(约50 GiB是我选择的)。
  5. 使用Ubuntu Live CD重新启动。
  6. 选择“尝试Ubuntu”。
  7. 启动名为GParted的应用程序。
  8. 使用文件系统ReiserFS创建名为“bootloader”的新分区。 我做了这个分区500 MiB。 我不确定文件系统或大小是否重要。 根据Wikipedia BIOS Boot分区页面 ,此分区可以只有1 MiB。
  9. 创建一个大约1 GiB的新linux-swap分区。 我把这称为“交换”。
  10. 使用剩余的未分配空间创建一个名为“primary”的ext4分区。

按照上述说明操作后,GParted应与下图类似。 请记住,我在安装后接受了此操作。 我的linux-swap和ext4分区的标签消失了,Ubuntu安装后添加了键/感叹号图标。 此外,无需为ResiserFS分区设置bios_grub标志,这也是在安装后(或期间)自动添加的。 的GParted

现在已经设置了分区,回到桌面,点击“安装Ubuntu 12.04”(如果它不在桌面上,这也应该出现在左边的菜单栏中),并按照下面的说明进行操作

  1. 浏览选项(根据需要对它们进行个性化),直到进入“安装类型”屏幕,询问您如何安装Ubuntu。
  2. 在“安装类型”屏幕上,选择“其他”并继续(按“立即安装”)。
  3. 您现在将到达一个列出您所有分区的窗口。 识别“引导加载程序”分区(如果标签未显示,请通过设备识别,键入或调整列大小)并双击它。
  4. 应弹出一个显示“编辑分区”的窗口。 选择“用作:”旁边的选项字段,然后单击“预留BIOS引导区域”(如下图所示)的值。 按“确定”。 选择“保留的BIOS启动区域”
  5. 识别刚刚创建的ext4分区,然后打开“编辑分区”窗口。
  6. 将“Use as:”值设置为“Ext4 journaling file system”,检查format选项。 确保还将mount字段设置为/ 。 按“确定”。
  7. 继续并继续该过程,根据需要个性化结果。

从这里,一切都应该工作正常。 确保安装了rEFIt或rEFInd,以便稍后可以启动到Ubuntu 1

1.事实certificate,如果你在启动时卡住了,而不是像rEFIt这样的程序和它的前身,你可以按住alt / option键来启动分区/磁盘/无论如何。

我最后一次检查(两个或三个版本之前),Ubuntu的“Mac备用”版本基本上只是普通的Ubuntu但剥夺了它的EFI启动选项。 这可能看起来很奇怪,因为Mac使用EFI,但问题是Mac的EFI很奇怪 ,标准的Ubuntu安装程序出现了Mac的EFI问题。 (但我不记得问题的确切性质。)由于Mac提供了BIOS兼容层,因此以这种方式启动是有意义的; 当GRUB使用BIOS引导模式安装到GPT磁盘时,需要使用BIOS引导分区 (Ubuntu对话框称为“保留的BIOS引导区”)。 因此,对话框要求该区域。

如何继续的一个选项是默认创建BIOS引导分区的请求。 如果一切顺利,Ubuntu将在BIOS模式下启动。 您可以随后通过安装EFI模式引导加载程序来更改Linux引导模式。 有关如何执行此操作的一个示例,请参阅我在Mac上的EFI-Booting Ubuntu ,特别是标题为“修复安装”的部分。

另一种选择是尝试使用标准的Ubuntu安装程序而不是Mac版本。 您可能需要一些帮助才能启动它; 虽然我不做任何承诺,但rEFInd可能会对此有所帮助。 启动安装程序后,您应该通过查找名为/sys/firmware/efi的目录来确保它在EFI模式下运行。 如果它存在,您已经在EFI模式下启动,如果它不存在,您可能已经在BIOS模式下启动,应该再试一次。

您是否尝试选择/dev/sda1作为安装引导加载程序的位置? 在自定义安装菜单的底部,有一个标记的地方:

 Device for bootloader installation 

从下拉菜单中选择/ dev / sda1。