提要:前面写了那么多期,我想差不多也该完结了。然而大结局的图还没截好,所以这一期就来填个坑——如何修复系统引导。讲道理,那么长时间过去了,系统也该出点问题了吧。在此期间,我也不知道会不会出现什么命令。系统是Linux mint 18.3 kde amd64,引导方式为legacy/mbr。由于懒得搞虚拟机,这次就用实机演示。
一、具体症状
说起这个,我就想到了学生时代一周一蓝屏,一月一黑屏。那时候大多数人的选择都是到处找配件侠装系统。毕竟没有装系统无法解决的问题,要是有,那就换电脑。
然而装系统有太多弊端,学生时代可能无所谓,但到了后来,我是无论如何都不想装了。一是电脑经过长期使用,已经彻底变成了自己想要的样子,一旦格盘,所有日积月累的细节性配置付之东流。二是桌面上有太多工作资料,即使重要内容已经备份,但也总会丢失一些文件,更难受的是记忆力减退导致装完系统后完全想不起来丢了什么东西。于是我就开始思考如何尽量不装系统。
黑屏问题千千万,引导错误占一半。像这样的问题,实在不用掏出安装光盘。正常情况下,十分钟内应该能够解决。至于其具体症状,表现有三:
其一,mbr惨遭覆盖。
第一期所装的双系统,是以grub2来引导的,我把它装在了sda(系统盘)的mbr。此位置如果被覆盖,那么原本的grub2就不会启动。
最常见的情况是在安装Ubuntu之后再安装win,重启后就只能进入Windows了。
有时mbr会因不明原因意外损坏。(图1)此时开机显示“system not found”。
有时因为一些骚操作,还会得到意外的惊喜。前几天某it之家用户(@懒懒的小叶榄仁)在Linux中安装grub2,在win中安装grub4dos,最终录下了一段grub2和grub4dos互相循环启动的视频,真是可喜可贺。
其二,grub2配置问题。
grub2的配置文件就放在Linux分区的/boot/grub目录。对配置文件的修改会引起各种问题,最常见的就是grub2可以启动,但其中缺少启动项。(图2)
其三,分区发生了变化。
这种问题一般出现在对分区进行操作之后。由于分区信息改变,grub2找不到配置文件。win10的大更新(就是重启好几次的那种)经常带来这种问题,后来我不得不把win10的版本固定在1607(谁也别想骗我升级)。(图3)此时只能进入grub rescue。
二、解决方法
为了简化操作,以上各种情况我们都采用相同的方法进行修复。
首先准备一个U盘,里面放上第一期用过的安装镜像。再准备两个安装包也放到U盘里,因为上一篇说过——我断网了。(图4)
现在从U盘启动,选择Linux livecd。(图5)
进入桌面后,从U盘里翻出上面那两个软件,先安装libXXX,再安装grubXXX。
然后打开grub-customizer。首选要选择Linux所在的分区。如果选哪个都遭到拒绝的话,请直接看最后一段。(图6)
现在来到了软件主界面,此时grub2配置已被刷新,所有分区中能够被引导的系统都已经加入菜单(连U盘也进去了),只要点击保存,问题二就算差不多修复了。顺便把用不到的启动项给删了。(图7)
接下来,为了修复问题一和三,点击文件-安装mbr。虽然不知道你的电脑究竟出了什么事,但现在把mbr覆盖回来就行了。(图8)
安装成功后点一下保存,就可以重启电脑了。(图9)
重启后发现问题已经修复,就是grub2变得更难看了,而且U盘(sdc4)也作为win7跑进去了。(图10)
进入熟悉的桌面后,再次打开grub-customizer。刚才说过,软件打开后会自动刷新,由于U盘已经拔出来。现在启动项已经恢复了。(图11)
点击外观设置,再点刷新,会出现当前外观预览。把字体设置为unifont即可。(图12)
最后别忘了保存。总之grub2这样子也就差不多了,如果想要好看的话,不如安装burg(grub倒过来写),效果炒鸡棒(然而随便安装这些东西也是有黑屏风险的)。(图13)
下期预告:那么问题来了,如果引导没啥问题,但系统文件爆炸导致各种无法理解的问题,如何修复呢?其实这很简单,这还修什么修,赶紧把备份文件翻出来吧。下一期会讲Linux备份与还原。
相关阅读:
《IT之家学院:不懂命令行怎么玩Linux(一)双系统安装》
《IT之家学院:不懂命令行怎么玩Linux(二)安装软件篇》
《IT之家学院:不懂命令行怎么玩Linux(三)自动化配置篇》
《IT之家学院:不懂命令行怎么玩Linux(四)玩游戏篇》
《IT之家学院:不懂命令行怎么玩Linux(五)下载篇》
《IT之家学院:不懂命令行怎么玩Linux(六)音乐播放器篇》
《IT之家学院:不懂命令行怎么玩Linux(七)局域网和防火墙》
《IT之家学院:不懂命令行怎么玩Linux(八)番外篇》
这是水淼·dedeCMS站群文章更新器的试用版本更新的文章,故有此标记(2023-12-17 08:34:04)