win10 linux双系统 mbr,Ubuntu 16.04 LTS与Windows 10双系统引导恢复(仅适用BIOS+MBR)

这是一次踩坑记录

之前在一台【戴尔Inspiron 灵越 15 7000游匣Master 7567】(Intel i7-7700HQ + NVIDIA 1050Ti + 3840*2160高清屏)的笔记本上成功安装Windows 10和Ubuntu 16.04 LTS。其中Windows 10系统分区独占128G固态,Ubuntu 16.04 LTS在机械盘的某个分区里。硬盘都是MBR分区表,启动引导都放在了固态盘里。双系统安装后,在Ubuntu 16.04 LTS里面完成NVIDIA显卡驱动的安装、CUDA及常用深度学习框架的部署。

后来某天,Ubuntu升级显卡驱动,结果悲剧:1、启动Ubuntu 系统时,无限循环登录界面;2、进入纯字符界面(Ctrl+Alt+F1)登陆并且卸载NVIDIA驱动后,能进系统,但4K分辨率显示卡顿,且通过系统的GUI设置不能调分辨率。

一段时间不管,后来某天Windows 10自动更新,把引导覆盖了。从此,连Ubuntu也进不去了,决心想办法修复。遂查阅一些资料,在各大网友的帮助下,成功解决问题。一怒之下,写下经历。以便以后再出问题能快速解决。

在此,感谢如下两个帖子,我的主要问题在这两个帖子指引下成功解决。

下面是第一个问题的解决:引导修复

本引导修复仅支持MBR分区表的硬盘,GPT分区表请移步UEFI+GPT下Ubuntu引导恢复

这一步主要参考了前述的第一个帖子

先制作一个Ubuntu的LiveCD启动盘,版本我用的18.04(16.04也可以,毕竟系统装的就是16.04)。

U盘引导启动,开机按F12进行引导选择(不同电脑按键不一样),选择U盘即可。这里注意两点:

1)引导模式,由于是MBR的磁盘分区表,所以不能UEFI引导。而我做的LiveCD在两种模式都可以引导,在这里我选了Legacy方式;

2)可能是屏幕原因,也可能是镜像或者U盘原因,我进18.04的试用时,总会在桌面卡死然后死机,只能长按电源键强制关机。后来在引导的时候,一出现紫色界面,立马按F1,然后会让选择语言,选了English之后,会进行启动选择,我选择Try Ubuntu without installing.进入桌面后,打开一个终端。

通过 fdisk 和 blkid命令查看并确定Ubuntu安装所在分区,以及确定引导分区。

sudo fdisk -l

sudo blkid

下面是我这个电脑的截图(主要关注/dev/sdX#,用于帮助确定相关的分区 )

bc89b3404571?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

fdisk

bc89b3404571?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

blkid

从图中可以看出,/dev/sda是固态盘(128G大小),/dev/sdb是机械盘(1TB大小),/dev/sdc是LiveCD的U盘,/dev/sdd是我另外接的一个2G的U盘。我的Ubuntu安装分区是/dev/sdb5,是机械盘倒数第二个分区;引导分区是/dev/sda1,在固态上。虽然现实我的机械盘包含可引导分区,但实际上不能通过机械盘引导启动系统。

挂载Ubuntu分区到一个临时目录,比如挂载到 /mnt/ubuntu,注意替换下述命令中的/dev/sdXy为第3步中得到的Ubuntu分区的设备名称:

sudo mkdir /mnt/ubuntu

sudo mount /dev/sdXy /mnt/ubuntu

比如对于我的电脑,就是:

sudo mkdir /mnt/ubuntu

sudo mount /dev/sdb5 /mnt/ubuntu

这里需要注意一点,如果有Ubuntu有单独的boot分区,则应该挂在boot分区到/mnt/ubuntu/boot下,我的整个Ubuntu都在一个分区上,所以这里可以忽略。

重新安装grub,将下面命令中的/dev/sdX替换为第3步中得到的引导硬盘的设备名称。省略数字号码。

sudo grub-install --boot-directory=/mnt/ubuntu/boot /dev/sdX

比如对于我的电脑,就是:

sudo grub-install --boot-directory=/mnt/ubuntu/boot /dev/sda

这一步,我第一次运行时报了一个错误,说是没找到软件。连网后,重试一次,问题解决。

接着重启,发现可以引导了。

然后是显卡驱动问题

引导修复并启动系统,在安装NVIDIA驱动后(安装过程如我这篇文章的第一张图),发现在登录界面无限循环。然后只能卸载NVIDIA驱动(Ctrl+Alt+F1进纯字符界面,用sudo apt purge nvidia-*)。卸载后可以进系统,但是3840*2160分辨率的屏幕,十分卡顿。通过Ubuntu的System Setting下的Display,发现分辨率选项只有3840*2160这一个。

这一步主要参考了前述的第二个帖子

Ctrl+Alt+F1进纯字符界面(因为图形界面非常卡,不愿意浪费时间等待,如果愿意等待,可以在图形界面下打开终端)。

编辑/etc/default/grub文件,参考的帖子是让加上nomodeset字样,我发现我的grub文件已经有nomodeset,于是我试了下删除nomodeset。

然后sudo update-grub更新引导,并重启。发现图形界面不卡顿了,也能把分辨率改到1080P,在Software&Updates的Additional Drivers里面安装NVIDIA驱动,问题解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值