多系统引导 | grub 更新后 CentOS 引导错误

Posted Linux新手指北

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多系统引导 | grub 更新后 CentOS 引导错误相关的知识,希望对你有一定的参考价值。

先说问题:

在一个电脑装多个系统(Windows 和 Linux 发行版)时,其中一个发行版更新后,默认更新 grub,但是其他发行版可能不认识它自动修改后的设置参数,导致无法启动。

做为一个经常尝试多个发行版的 Linux 脑残粉儿,我就遇到过这种情况。

先上一张我的 OS List:


Manjaro 更新 grub 之后,CentOS7 启动不了了:

多系统引导 | grub 更新后 CentOS 引导错误




错误关键字是:

error: invalid file name '16'

明确问题

CentOS 不能启动;错误关键字:centos, 16

如何解决

  • 猜测是 grub 更新引起的

  • 进入 Manjaro 的系统:

sudo fdisk -l   # 查看 CentOS 的根分区: 在 `/dev/sdb8`
sudo blkid
# output:
#
# ...
# dev/sdb8: LABEL="OS_Cent" UUID="e684cb20-a15b-4c9f-8147-ddc391bad275" TYPE="ext4" PARTUUID="a645d9b4-08"
# ...
# 可知 `/dev/sdb8` 的 UUID 为:e684cb20-a15b-4c9f-8147-ddc391bad275
sudo cp -p /etc/boot/grub/grub.cfg /ec/boot/grub/grub.cfg.old # 备份,劝大家养成好习惯,你们以后大概率会感谢我的。套路一下:别问我怎么知道的,说起来都是泪

sudo vim /etc/boot/grub/grub.cfg
# 当你试图修改这个文件的时候,你会收到如下的警告:

####################################
# DO NOT EDIT THIS FILE
####################################

# 特此声明,你得知道自己在干什么。
# 反正我不管了:
# `/centos` 搜索 centos 这个关键词

结果:



看到那个错误关键字 '16' 了吗?
还有它的 UUID:

linux /boot/vmlinuz-3.10.0-1160.11.1.el7.x86_64 root=UUID=e684cb20-a15b-4c9f-8147-ddc391bad275 ro rhgb quiet LANG=zh_CN.UTF-8

我把它(16)删除了。别处哪儿也没有动。

再启动,OK!


以上是关于多系统引导 | grub 更新后 CentOS 引导错误的主要内容,如果未能解决你的问题,请参考以下文章

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置

真实机安装CentOS后无法进入系统,自动跳入grub引导界面,但手工引导提示Error 25:Disk read error

关于centos与ubuntu双系统的引导问题

centos 7 安装 恢复windows引导项

双系统更新ubuntu后,启动引导项消失,无法进入windows

Centos 7 下添加文件系统ntfs 支持,添加windows系统引导