Win10+Ubuntu双系统UEFI启动方式下GRUB消失直接进入Windows以及重装时grub-install致命错误解决方法
2017-05-01 11:32
609 查看
问题描述:
双系统安装十分顺利,我是先装Windows再装Ubuntu,成功后开机可以看到Grub引导程序,看似已经成功但是进入Windows后再开机就看不见Grub引导程序,无论是你重启还是关机。重装Ubuntu发现一到安装grub-install时就fatal error,很多网上的解决方法几乎没用,自己摸索了下终于是解决了。查阅了一些资料,首先确定两点:
1、Ubuntu在11.0后便已经支持UEFI启动
2、新版本的Ubuntu在Secure Boot开启的情况下也可以进入,但是最好把这关掉
原因分析:
UEFI启动时需要有一个ESP分区(EFI 系统分区),这个分区的EFI目录下有三个目录(安装Ubuntu后),一个是BOOT目录,一个是Microsoft目录还有一个是Ubuntu目录。在windows下通过mountvol挂载ESP分区,就能看到此分区内容。UEFI方式时会找到BOOT目录下的bootx64.efi启动文件并运行。而Microsoft目录下有一个bootmgfw.efi,对比发现这两文件一样的,也就是说UEFI找到的bootx64.efi就是Microsoft下的efi文件,也就直接启动了windows而忽略了ubuntu。那ubuntu目录下有什么?cd后提示文件已损坏,无法在这里创建和拷贝文件,这就是ubuntu重装时一到grub-install就失败的原因,这片区域早已损坏!efi启动文件都找不到了,哪里还能启动grub?解决方法:
主要思路,找到grub启动程序,grubx64.efi,放到ESP分区的ubuntu目录下即可。解决过程:
先使用fdisk进行修复,修复后ubuntu目录下啥都没有了,但是可以正常建立、复制文件。ubuntu的启动靠grub,而咱们的ubuntu系统虽然启动不了,但是系统文件以及boot目录并没有损失,启动文件就在boot目录下。我们只需要利用u盘使用try ubuntu widthout install进入试用模式(Live CD模式,因为硬盘上的ubuntu已经不能启动了),通过终端的fdisk查看你的分区情况,找到你的boot分区位置和系统根目录位置,通过mount命令挂载到试用系统的mnt下,然后再将硬盘的ESP分区(在安装Windows时建立)也进行挂载,挂载的目的是进行访问以复制缺失的文件。
在boot目录下的grub目录中有我们需要的一切,把x86_64-efi目录下的所有文件复制到ESP分区的ubuntu目录下即可,这样相当于添加了一个启动项。在开机时选择启动项时选择ubuntu启动项即可,当然你也可以通过其他方式将启动项默认设置为grub。注意该x86_64-efi目录下有一个后缀名为efi的文件,但名称不是grubx64这没关系,UEFI识别.efi不识别名称,你可以自己改成grubx64,这也是ubuntu安装时所做的。
总结:
之所以直接进入Windows是因为ESP分区下的ubuntu目录损坏,为何损坏我也不知道,这也导致了重装ubuntu始终会在grub-install时出错。只需将装好的系统的boot/grub下的x86_64-efi下左右文件复制过去即可。相关文章推荐
- Windows xp和ubuntu 9.10双系统,重装windows后,mbr被覆盖,grub不能启动的解决方法
- Windows重装导致Ubuntu无法启动,Grub信息丢失的解决方法
- grub rescue 方法,解决重装windows系统导致的linux无法启动问题
- win10做了ubuntu双系统之后,启动直接进入ubuntu系统解决方法
- 双系统删除Ubuntu后出现grub界面而无法正常启动Windows系统的解决方法
- UEFI BIOS模式下Windows系统启动过程以及引导文件修复方法
- GRUB安装后启动进入GRUB命令环境后,如何进入系统的解决方法
- UEFI BIOS模式下Windows系统启动过程以及引导文件修复方法
- 双系统删除Ubuntu后出现grub界面而无法正常启动Windows系统的解决方法
- GRUB安装后启动进入GRUB命令环境后,如何进入系统的解决方法
- 双系统直接进入grub不能进入ubantu的快速解决方法
- weblogic内存溢出解决方法以及无密码直接启动weblogic
- UEFI BIOS模式下Windows系统启动过程以及引导文件修复方法
- windows服务程序调试方法 - 启动直接进入调试
- windows系统重装后ubuntu启动引导找不到的解决方法
- 安装双系统后进入grub页面后无法启动系统的解决方法
- 重装Windows XP系统之后如何恢复Linux启动选单 以及boot设置 解决方法
- 以直接复制文件的方式,安装不依赖MBR的windows(grub启动)
- 无法直接启动带有"类库输出类型"的项目 的解决方法
- 试图抓取非英文windows操作系统镜像时PE无法正常启动解决方法