背景:我的董事会有UEFI。我在同一个物理驱动器上安装了Windows 8和Ubuntu14.04LTS(首先是windows分区)。Windows使用UEFI来引导,而Ubuntu则没有。这意味着,为了引导到Ubuntu,我必须选择BIOS启动菜单和Ubuntu (分别为Windows UEFI)的非UEFI设备。这对我来说非常好,Ubuntu对Windows安装和Windows对Ubuntu一无所知。
情境:我接受了Windows 10升级,它在Ubuntu分区之前添加了一些分区。Windows仍然可以通过UEFI引导,但Ubuntu在启动时进入Grub救援模式:
error: no such partition.
Entering rescue mode...
grub rescue>从这一点开始,我通过键入
set prefix=(hd0,gpt5)/boot/grub
set root=(hd0,gpt5)
insmod normal
normalas (hd0,gpt5)是我的包含分区的/boot (这帮助了Windows 10升级导致grub救援)
问:如何使前缀/根的更改永久化?我遵循这个http://howtoubuntu.org/how-to-repair-restore-reinstall-grub-2-with-a-ubuntu-live-cd并尝试重新安装grub,但是得到了以下内容:
sudo grub-install /dev/sda
Installing for i386-pc platform.
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged..
grub-install: error: will not proceed with blocklists.我也尝试过引导-修复,取消了单独的/boot/efi分区,但是我收到了一个错误:“GPT检测到了。请创建Boot,然后再试一次)...。”
这是我的引导信息摘要http://paste.ubuntu.com/12520209/
/dev/sdc是由LiveCD Ubuntu临时挂载的。
是否有一种方法可以指示GRUB2查找,gpt5而不是gpt4,如引导信息中所示?我浏览了askubuntu,但是我发现两个系统的UEFI模式都与UEFI模式相关,我希望避免在UEFI模式下设置Ubuntu。
发布于 2015-09-23 12:36:15
由于Ubuntu已经安装在Bios遗留模式中,并且设备启用了UEFI,所以Linux寻找带有bios_grub标志的分区,这令人惊讶地没有出现。我在上一个Windows分区和第一个Linux分区之间创建了大小为1MB的新分区。我为它设置了bios_grub标志,并且没有格式化。我用口子做的。在此之后,我执行了grub-安装,然后是update。此操作检测带有标志的分区,将core.img安装到此新分区,并更新MBR以在那里查找core.img。现在,我的Ubuntu grub运行在遗留模式中,正如我所期望的那样。
我张贴我的当前引导信息,以便一个人可以比较的变化。
http://paste.ubuntu.com/12530606/
https://askubuntu.com/questions/677012
复制相似问题