Contents

介绍

如果GRUB接管MBR,那么GRUB安装分为三部分:

第一部分(一般情况下)写在了MBR上

第二部分是将core.img嵌入到MBR之后的保留扇区部分

第三部分才是/boot/grub下面的各种模块和文件(如果/boot单独分区,则直接写在对应分区的/grub目录)里面。

注意:本条目只针对GRUB2.0。

显示GRUB菜单

一般情况下,GRUB菜单是直接显示的。

有时候用户会将GRUB等待时间设为0,若想临时显示GRUB菜单,开机时,在GRUB加载前按住Shift键不放即可,部分主板可能需要多重启一次才会生效。

若能进入深度操作系统,也可以到 控制中心->启动菜单 调整相应选项。

GRUB错误

deepin15.3启动失败(uefi)

报错与分析

开机显示:

未知对象

与旧版教程中的报错不同,这种情况下标识符是grub>而不是grub rescure>。这个时候直接输入normal并回车不会执行任何操作,说明是normal.mod出错导致的,grub正常识别了deepin的/boot分区,但是加载了出错的normal.mod,导致无法引导系统。出错的原因可能是由于easybcd与grub之间存在兼容性问题导致的,也可能是因为之前重复安装其他操作系统系统但是删除旧系统后没有清理efi分区甚至是直接在旧系统上安装deepin15.3。

解决办法

使用liveUSB、liveCD或者设备上的另一个linux发行版打开gparted查看引导出错的deepin15.3的根目录挂载点,例如/dev/sda1,具体的值与你的分区有关,为了描述方便下面均以/dev/sda1为例,实际操作时记得改为你的系统的挂载点,下文的系统分区也是,以你的实际显示为准;

选择deepin引导,进入grub命令行后(也就是这个报错界面),输入set然后回车;

一般这种报错并不是因为路径识别出错,如果你希望验证是否是grub没有正确识别系统路径,可以参照这个链接的“查找正确分区”部分(后面的不需要看,因为错误不同),所以可以直接查看prefix=行的显示(一般在set输出的末尾几行),示例:

未知对象

其中(hd2,gpt1)代表系统所在分区。为了描述方便下面均以(hd2,gpt1)为例。

输入 linux (hd2,gpt1)/boot/vmlinuz,然后按tab按键(Q键左边的那个按键)补全名字。补全之后不要按回车,而是输入空格,然后继续输入root=/dev/sda1 foo bar,之后才回车。这一步是加载系统内核。注意,(hd2,gpt1)和/boot之间没有空格。

输入initrd (hd2,gpt1)/boot/init,然后按tab按键补全名字,补全之后回车。

输入boot,回车,就可以引导进入系统了。

进入系统之后,在终端下输入sudo update-grub,之后在控制中心打开启动菜单选项,等待它自动更新,更新完毕后就完成修复工作了,可以正常引导deepin15.3了。欢呼吧!

鸣谢:@mattd

旧版教程

开机显示:

未知对象

已经发现下面几种操作会导致这种问题:

想删除Linux,于是直接在windows下删除/格式化了Linux所在的分区。

调整磁盘,利用工具合并/分割/调整/删除分区,使磁盘分区数目发生了变化。

重新安装系统,把linux安装到了新分区,原有分区已经格式化,但是没有重新安装GRUB2。

用Linux备份工具/衍生版制造工具等,把主分区恢复成了8.X的老版本,结果老版本的GRUB是GRUB1,于是把GRUB2破坏掉了。

重装GRUB

1.使用深度操作系统启动盘引导电脑启动,待进入安装界面后,按下Ctrl+Alt+F1,执行以下命令:

sudo service lightdm stop

startx

稍等片刻,进入Live CD模式。

2.进入Live CD系统后打开终端,挂载需要修复系统的 / 挂载到/mnt,可以利用Gparted或者sudo fdisk -l命令查看,例如需要修复系统的/分区为/dev/sda1,那么终端执行:

sudo mount /dev/sda1 /mnt

如果需要修复系统的/boot单独分了出来(假设为/dev/sda2),也要挂上,终端执行:

sudo mount /dev/sda2 /mnt/boot

另外,将Live CD系统的/dev目录同时挂在/mnt下,终端执行:

sudo mount --bind /dev /mnt/dev

然后使用chroot命令,将Live CD的 / 设为以前的/,终端执行:

sudo mount --bind /proc /mnt/proc

sudo mount --bind /sys /mnt/sys

sudo chroot /mnt

安装并刷新GRUB设置(主板为BIOS引导),请终端执行:

grub-probe -t device /boot/grub

sudo grub-install /dev/sda

sudo grub-install --recheck /dev/sda

sudo update-grub

安装并刷新GRUB设置(主板为UEFI引导),请终端执行:

grub-probe -t device /boot/grub

sudo grub-install --target=$(ls /usr/lib/grub/ | grep efi)

sudo grub-install --recheck /dev/sda

sudo update-grub

挂载efi分区到/boot/efi

安装grub-efi这个包grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Deepin

sudo grub-mkconfig -o /boot/grub/grub.cfg

至此,修复完成,重启电脑生效。

删除GRUB

删除GRUB可能会导致电脑无法引导deepin,请谨慎操作。

如果需要彻底删除GRUB2(卸载深度操作系统),请查看 卸载系统。

参考链接

如何修复GRUB2

ubuntu中文论坛:Grub Rescue修复方法

最新修复双系统grub的方法

Windows硬盘安装linux deepin及引导修复,安全删除

如何在Ubuntu12.04/12.10中重装或修复GRUB2引导

深度linux系统反复重启,修复启动相关推荐

  1. linux系统每月定时重启,linux系统定时重启.doc

    linux系统定时重启 linux系统定时重启 -------------------- 每个月1号凌晨3点自动重启 步骤如下: 1.用root帐号登陆: 2.打开终端窗口: 3.输入"cr ...

  2. linux系统下重启网络服务的两种方法

    linux系统下重启网络服务的两种方法 发布时间:2020-04-02 11:25:25 来源:亿速云 阅读:207 作者:小新 今天小编给大家分享的是linux系统下重启网络服务的两种方法,很多人都 ...

  3. linux电脑自启动,caddyserver在linux系统下设置开机启动

    caddyserver在linux系统下的开机启动设置方法 方法一: vi /etc/rc.local 在exit 0前添加如下代码cd /root/caddy ./caddy & 保存后重启 ...

  4. 深度系统linux15.3 32位下载,深度linux下载-深度linux系统v15.3 正式版下载-955游戏网...

    深度linux系统说明 统一风格的桌面环境 别出心裁的图标设计,焕然一新的图形界面,自然.平滑的动画过渡效果,更有独树一帜的圆角窗口设计,精美绝伦的多任务视图,处处精心,只为给你细腻自然的品质体验. ...

  5. Linux系统下SSH服务启动失败故障处理

    Linux系统下SSH服务启动失败故障处理 一.系统版本 二.报错状态 三.处理方法 四.查看服务状态 一.系统版本 [root@localhost ~]# cat /etc/os-release N ...

  6. linux系统深度评测,真国产,深度linux系统评测第二集

    真国产,深度linux系统评测第二集 我有两台电脑,i7的台式机和i5的笔记本 I5的笔记本是那种老i5,说出来不怕大家笑话,这台i5笔记本比在座的各位岁数都大,我已经闲置了一两年,因为它的性能已经完 ...

  7. linux断电并重启命令,Linux系统关机重启相关命令

    1.立即重启命令 方法1: [root@itbkz ~]# init 6 方法2: [root@itbkz ~]# reboot 方法3: [root@itbkz ~]# shutdown -r no ...

  8. linux系统怎么重启网卡?linux重启网卡的三种教程

    在实际工作中,经常会遇到Linux系统进行重启网卡的操作.在这里整理一下,进行多种方法的网卡重启. 一.service network restart 1.首先用CRT工具连接到Linux命令行界面. ...

  9. linux服务器重启日志,Linux系统最近重启时间、错误日志

    查看Linux系统最近重启命令 [root@localhost ~]# last reboot reboot   system boot  2.6.18-164.el5   Wed Dec 22 20 ...

最新文章

  1. Oracle事务之一:锁和隔离
  2. 【Linux】一步一步学Linux——skill命令(143)
  3. hazelcast入门教程_Hazelcast入门指南第6部分
  4. js `` 手机不支持
  5. 电商项目实战项目需求以及技术选型
  6. psim扰动观察法编程c语言,一种数字PID控制扰动观察法光伏电池MPPT仿真.doc
  7. 孙玄:分布式系统选主怎么玩
  8. STM32L4系列单片机如何使用RTC唤醒定时器进入Standby低功耗模式并唤醒+整机功耗测试
  9. 基于h a d oop的海量图片存储模型 的分析和设计
  10. python层次分析法案例_在R语言中使用层次分析法-案例1
  11. 根据FOV和图像大小计算相机内参[Python]
  12. Ubuntu下locale命令路径无法找到问题解决方法:Cannot set LC_CTYPE to default locale: No such file or directory
  13. 关于pr的一些实用小知识
  14. 【云原生】容器场景下的内核安全
  15. 点石互动--kyw之:Google优化圣经翻译
  16. 独领风骚,卡兹特投影仪大热香港电子展
  17. requests爬取去哪儿网站
  18. 微信拍一拍怎么设置?详细教程,图文分享
  19. 乔布斯 1973 年求职申请表曝光,拍出22万 美元高价
  20. 常山浙西计算机学校,常山这几所学校要大变样了,有不少亮点哦!

热门文章

  1. 【慢慢学Android】:11.对话框大全
  2. java新入手的三十个基本概念
  3. leetcode 172 python
  4. java http 返回值_java发送http请求,无需等待返回结果
  5. CCF201709-2 公共钥匙盒
  6. 经济学建模软件 python_从python创建“经济学人”风格的图形
  7. java运用ascii实现动画效果_安卓开发20:动画之Animation 详细使用-主要通过java代码实现动画效果...
  8. TiFlash:并非另一个 T + 1 列存数据库
  9. 从HDFS的写入和读取中,我发现了点东西
  10. 云图说|数据仓库服务 GaussDB(DWS) 的“千里眼、顺风耳”—数据库智能运维