原文地址:https://blog.csdn.net/weixin_39212776/article/details/81239805?utm_medium=distribute.wap_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-5.wap_blog_relevant_default&spm=1001.2101.3001.4242.4&utm_relevant_index=8
背景介绍:
支持efi分区引导的电脑,可以通过建立多个efi分区,引导同一块硬盘上的不同系统。
比如:硬盘0有7个分区,分别是:
0:0-ntfs-win10系统分区
0:1-ext4-ubuntu根目录分区
0:2-ubuntu-swap分区
0:3-黑苹果apfs分区
0:4-fat32-efi分区1-引导win10
0:5-fat32-efi分区1-引导ubuntu
0:6-fat32-efi分区1-引导黑果
这种分区方法,可以用单独的efi分区引导不同的系统。多系统安装,可以不按顺序,随意先安装那个系统都可以。
装完一个系统后,务必把对应的efi分区备份,待所有系统全部安装完成后把备份的efi文件,恢复到相应的efi分区即可。
否则前一个系统的efi文件会在后一个系统安装时被修改或覆盖。
除了安装系统会修改或覆盖前一个系统的efi文件外,安装完系统后,又变更了系统分区的硬盘顺序,也会导致原来的efi文件不可用。比如:
原来的0:5-efi分区引导了0:1ubuntu系统,如果把0:1的硬盘顺序调整,改为0:2,此时原来的0:5引导分区也不可用,此时就需要修复该分区。
这个方法有一个缺点,就是每个efi分区只能单独引导一个系统,如果想使用某一个efi分区,一起引导其他所有系统,需要手动修改。
注:黑果OC、Clover引导可以自动识别其他系统分区,自动添加引导启动项。
下文仅作为参考,非操作完全一样:
修复Ubuntu18.04与Windows 10双系统丢失grub引导界面
问题描述
最近因为学习Linux而装了Windows10+ubuntu的双系统,安装后的前几天还一切正常,每次开机grub都会让人性化的让我选择想要进入的系统。好景不长,可恶的Windows强制更新了系统,就在这之后那脆弱的grub2便“不嗨森”了,每次打开电脑都不让我选择而直接进入了Linux系统(在我看来这像极了Windows与Linux相互在争风吃醋-_-!),但是作为第三方的我们只能遭殃咯!?可能这个时候你会很着急:“难道我从次就与我心爱的Windows系统无缘了吗?我还有很多资料在里面呢?怎么办?怎么办?……”。预知如何解决,且听下文分解:
解决方法
先别急,我们有秘诀
-
第一招
在开机的那秒秒钟我们“狂按”左上角的ESC键,此时你会发现屏幕弹出了个蓝色小方框,像极了之前的grub引导,这玩意也叫引导,是磁盘文件系统自带的,有了这玩意儿,你就可以选择进入你的Windows系统了。但是,作为技术人的我们能忍受这中“虐待”吗?这东西太不智能了吧,不行!我要换回我的grub引导,她才是我心目中的“女神”。当然,如果你能忍受这种虐待呢!有了上面的方法已经足够了,你就不要往下看了,浪费时间!
-
第二招
好的,下面我们开始今天的重点,根据上面的描述,我们可以敏锐的察觉到是grub引导坏了,高版本的Ubuntu是使用的grub2,这东西很好用,但也极其脆弱!所以下面我们的重点是修复它:
首先,我建议不要尝试用网上的各种命令修复方式去修复它(我亲测了很多就没成功过,浪费了我很多宝贵的时间),所以我们选择使用一个名为boot-repair的grub修复工具。这个东西很好用的,安装也极其简单,可以说智能帮你一键修复,我也不再多夸它了,下面我们试一试就知道了:
第一,进入terminel,先通过添加它的 PPA 版本库来安装boot-repair ,命令如下:
sudo apt-get update
sudo add-apt-repository ppa:yannubuntu/boot-repair
第二,避免意外,再次更新版本库
sudo apt-get update
第三,执行安装命令,安装boot-repair
sudo apt-get install -y boot-repair
第四,安装完毕后就启动应用
boot-repair
第五,如图,选择推荐修复后,耐心等待几分钟
第六,待修复完毕后,直接重启
reboot
下面是一条不明显的分割在线
第七,此时重启后便可看到grub引导界面了,我们选择进入Windows系统,如果你成功进入了Windows系统,那么恭喜你,成功了!如果你遇到下面这个报错,请速速回来看下面的解决方案,
erro: invalid EFI file path.
press any key to continue...
我们猜测这个包错的意思是引导按照原来的路径去寻找Windows的启动程序,但是路径错误了,所一我们要更改grub的配置:
sudo gedit /boot/grub/grub.cfg
进入后,一直下滑到最后,找到如下代码并更改:
menuentry "Windows 10" {
insmod chain
insmod ntfs
search --fs-uuid --set 4CEE-95B2
#chainloader +1
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
修改完后保存即可。然后重启电脑。。。再次进入了grub引导界面,选择进入Windows,发现能成功进入了。。。。以上便是本人修复grub引导所遇到的问题以及解决方案,希望能够帮助到大家!