9 Star 2 Fork 103

src-openEuler/grub2

从 20.03-LTS 升级到 20.03-LTS-SP1,导致启动失败

已完成
版本
创建于  
2021-02-20 17:16

1、修改源 /etc/yum.repos.d/openEulerOS.repo,LTS 换成 LTS-SP1
2、执行
yum clean all
yum update
3、重启,然后就报加载不到 kernel 和 initramfs 了,去根目录下找了:
升级启动失败

评论 (7)

zhengjunling 创建了版本 4年前
zhengjunling 关联仓库设置为src-openEuler/grub2 4年前
展开全部操作日志
  1. 问题根因:20.03-LTS以前默认采用传统cfg,而SP1版本grub2升级后默认变为bls格式,该变更在升级时未被识别,造成重启后无法根据bls格式的grub.cfg找到内核,启动失败。
    修复方案:通过修改grub2默认采用传统cfg格式修复该问题。
  2. 对于已产生该问题的OS系统,可通过升级grub2的方式修复(详细描述请见管理员指南-FAQ):
    输入图片说明

场景/步骤:
1、x86架构 Legacy引导(arm不涉及)
2、/boot目录未单独分区
3、dnf 软件包全量升级,由20.03-LTS升级到20.03-LTS-SP1

现象:
1、系统升级成功
2、重启引导失败

修复方式:
1、在引导界面按e进行grub2配置修改界面,修改内核与initrd部分的路径,如:

linux ($root)/vmlinuz-4.19-xxx root=xxx --->>> linux ($root)/boot/vmlinuz-4.19-xxx root=xxx
initrd ($root)/initramfs-4.19-xxx       --->>> initrd ($root)/boot/initramfs-4.19-xxx 

随后,按ctrl+x引导系统启动。
2、重新安装grub2-2.04-8及以后的版本
3、重新生成cfg文件,grub2-mkconfig -o /boot/grub2/grub.cfg
4、再次重启,系统成功引导

t.feng 任务状态进行中 修改为已完成 4年前

登录 后才可以发表评论

状态
负责人
项目
预计工期 (小时)
开始日期   -   截止日期
-
置顶选项
优先级
里程碑
分支
参与者(5)
5329419 openeuler ci bot 1632792936 t.feng-t_feng 5603730 yaqiangchen 1607954772 zhangqiumiao-zhangqiumiao 8128701 zheng junling 1604112451
1
https://gitee.com/src-openeuler/grub2.git
git@gitee.com:src-openeuler/grub2.git
src-openeuler
grub2
grub2

搜索帮助