Ubuntu与Windows10双系统引导问题--已解决

Ubuntu与Windows10双系统引导问题

我是先安装的Windows10 然后安装的Ubuntu
18.04桌面版系统,Ubuntu的系统EFI也安装在了Windows10的efi分区里面,所以开机只能进入到Ubuntu系统,为了解决这个问题,找了不知道多少个网站,可能是每个人的环境不同,所以给出的方法也不一样。

下面分享几个踩过的坑吧

@[toc]

1.修复Windows10的引导分区。

按照网上的教程说,使用Ubuntu的引导镜像,在“试用Ubuntu”里面 使用"boot-repair"来扫描efi分区启动,然后自动添加grub文件。

但是!

找了好多的教程也没有提到 联网!联网!联网!,按照centos的逻辑,在启动盘下安装软件的话,应该以启动盘里的软件源作为安装源来安装软件,没想到Ubuntu这个安装必须要联网,所以,搞了好久都是报错,直到我想到了联网试试。。。。。。

所以对于纯小白来说,这个步骤应该是这样的:

  1. 制作一个Ubuntu的引导U盘;
  2. 讲U盘插到笔记本中,开机的时候选择以U盘启动(HP笔记本是按ESC,然后选择boot menu,然后选择U盘启动。当然按快捷键也是可以的。);
  3. 选择"try ubuntu without install" ,然后就进到了一个Ubuntu的临时系统,这个临时系统也很强大,是可以连网操作的。


    U盘开机选项
  4. 很重要的一步,联网! 这里有网线的小伙伴把网线插上,没网线的小伙伴把WiFi连上,网线WiFi都没有的小伙伴,请把手机热点打开(有的宽带很坑,下载软件到一般就断掉,然后就提示一堆很头疼的英文报错,这里建议流量多的尽量使用手机热点来下载这个软件,如果流量少 而且wifi下载还总报错,那就多试几次。。。)。
  5. 当然,如果上述使用热点还慢的话,那么就把软件源换为中国的阿里云源,这样速度会快一点。
  6. 开机后和正常的Ubuntu没什么区别,我们使用"Ctrl+Alt+T"打开终端窗口,输入


    u盘
sudo - i                                                                                        #获取root权限
add-apt-repository ppa:yannubuntu/boot-repair    #获取最新修复引导的档案源
apt-get update                                                                           #更新
apt-get install boot-repair                                                      #获取并安装"boot-repair"安装包

然后按"win键" 输入:boot-repair,点击boot-repair的图标打开此软件,然后按"recommand repair"进行引导扫描,这里可能会扫描出很多的efi,后面会说怎么清理多余的efi。

扫描结束后,输入init 0关机,然后把U盘拔掉,再开机。

这里有的小伙伴并没有出现网上很多教程里面出现的很多引导项,还是和之前一样,直接引导进了Ubuntu系统,我也是这样的,后来又找了很多文章,把这个问题解决了。

2.解决Ubuntu开机不显示grub菜单的问题

这个和Ubuntu的默认grub配置文件有关,这里的配置文件设置的是自动跳过grub菜单,所以我们要设置一下这个,让他能显示出来,这样我们也可以使用Ubuntu的grub来引导Windows10 的系统(偷笑)。

这里贴一下我的/etc/default/grub的配置文件,然后解释一下:

1.先注释掉GRUB_TIMEOUT_STYLE=hidden
2.再修改一下GRUB_CMDLINE_LINUX_DEFAULT=""里的选项

这里注意一下,不要删除原来的配置,不用的就注释掉,免得后面还会用到,或者删错了不容易恢复。

lcp@lcp:~$ cat /etc/default/grub 

GRUB_DEFAULT=0
#GRUB_TIMEOUT_STYLE=hidden        
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
#GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX_DEFAULT="text"      
GRUB_CMDLINE_LINUX=""

修改完默认grub文件后,还需要手动更新一下grub。

sudo update-grub

更新完成后,重启就可以看见grub的菜单了。


未更改之前的grub菜单

3.使用Ubuntu的grub引导Windows 10

刚才我们扫描出了好多菜单,那么怎么分辨这些菜单是有用的,哪些是没用的呢,很简单!一个一个测试就可以了,点完回车没反应,或者进不去系统的,肯定就不是了,哈哈。

当然,我写这个博客就是为了让小白少踩坑。所以我这里简单说一下哪写是有用的,

ubuntu肯定是有用的,因为我们玩的就是Windows 和Ubuntu双系统啊。

还有就是Windows 10,就是"Windows UEFI bootmgfw.efi" 这个了。

这个System setup 就是刚才启动的时候,按ESC进入的那个菜单。

我们理清思路后,再进入到系统下,把多余的项目清理一下。

这个文件修改还是挺危险的,所以我们先把这个文件备份一份。

lcp@lcp:~$ cp /boot/grub/grub.cfg ./grub.bak

然后编辑这个备份文件。

向下翻,翻到"### BEGIN /etc/grub.d/25_custom ###"这段下面,就是刚才我们扫描出来的那些efi启动项。

在这个区域的配置文件只保留下面这部分就可以,当然我们也可以给这个配置文件改个名字。
只需要替换menuentry "Windows UEFI bootmgfw.efi",引号里的就行,例如menuentry "Windows 10"这样。

menuentry "Windows UEFI bootmgfw.efi" {
search --fs-uuid --no-floppy --set=root 8065E6370CF1A209
chainloader (${root})/efi/Microsoft/Boot/bootmgfw.efi
}
这里可能会出现提示文件只读,我们使用wq!来保存即可。

我们再备份一次/boot/grub/grub.cfg这个文件,因为我们马上要替换这个文件了,所以再保存一份,以防刚才改的有问题。

lcp@lcp:~$ cp /boot/grub/grub.cfg ./grub.bak2

lcp@lcp:~$ sudo cp ./grub.bak /boot/grub/grub.cfg 

然后我们重启电脑,看一下刚才的grub菜单。

更改后的grub菜单

我们选择windows 10,没一会儿就正常的进入到了我们的windows 10的系统。

win10界面

现在引导问题解决了,但是还有各种常用的应用问题还没解决,就已经凌晨3点了,明天再弄吧,如果文章里有哪里出现纰漏,请帮忙在评论中指出。

下面就是我的ubuntu啦。


ubuntu

参考文章:

解决Windows 10引导方面:
https://www.cnblogs.com/lymboy/p/7783756.html

grub方面:
https://zhidao.baidu.com/question/814215418815865532.html

你可能感兴趣的:(Ubuntu与Windows10双系统引导问题--已解决)