CentOS7 升级内核到 4.4 以上版本时无法重启

  • 原创
  • Madman
  • /
  • /
  • 0
  • 13726 次阅读

Synopsis: CentOS 7.3 从内核 3.10.0 升级到 4.14.40 后,重启不了,原因是 Linux 内核 4.4.x 版本之后,dracut 命令生成的 initramfs 默认不会自动加载 mpt3sas 驱动模块。因为没有对应的驱动程序,所以识别不了系统盘(两块 SAS 系统盘接在 LSI 2308 HBA 卡上,创建 RAID 1),从而导致内核 vmlinuz 无法加载它的 rootfs(根文件系统)

1. 现象描述

使用 CentOS-7-x86_64-DVD-1611.iso 原版 ISO 光盘安装了 CentOS-7.3 后,默认的 Linux内核 版本是 3.10.0-514.el7.x86_64

下载并安装以下两个 RPM 包,将内核升级到 4.14.40

  • kernel-4.14.40-1.x86_64.rpm
  • kernel-headers-4.14.40-1.x86_64.rpm

重启系统,等了半天系统没启动成功,发现一直卡在进度条。按 ESC 键查看详细信息如下:

0 按 ESC 查看详情

既然能显示 GRUB2 的引导菜单(都到进度条了,肯定过了引导菜单),说明 MBRGRUB2 没有问题,那么问题应该是 initramfs 中没有系统盘的驱动程序(需要 mpt2sas),导致内核 vmlinuz 无法加载它的 rootfs(根文件系统)。不能使用 单用户模式,因为进不去,systemd不可能启动起来,自然进不了单用户模式,那只能使用安装光盘的 救援模式

2. 问题解决

2.1 救援模式

我们需要利用原版 ISO 光盘所提供的 Rescure a CentOS Linux system(救援模式)来重建 initramfs

插入光盘后,设置 Boot Sequence(启动顺序),选择从光盘启动:

1 进入救援模式 - 设置启动项

选择 Troubleshooting(故障排除)

2 进入救援模式 - 选择故障排除

选择 Rescure a CentOS Linux system

3 进入救援模式 - 选择救援一个Linux系统

输入数字 1,即选择 1) Continue

4 进入救援模式 - 输入数字1并回车

Enter 回车键:

5 进入救援模式 - 回车确认

此时,已经进入救援模式了,并显示命令行 Shell:

6 进入救援模式 - 已进入救援模式命令行

2.2 重建 initramfs

升级前的内核 3.10.0-514.el7.x86_64 对应的 initramfsmpt2sas

  • 79523156
  • kakarott
  • cokeny
  • mucheng
  • 19357171
  • hudong
  • tadakey
  • remix77
  • mdcoco
  • lihuinihao
  • zhangjianhang
  • geng038
  • haha123
  • alasusu
  • greatred
  • yahwist-953978606
  • corinda
  • 115161561
  • zzltt
  • plina
  • suraiyah
  • nelle
  • nayisha
  • juyne
未经允许不得转载: LIFE & SHARE - 王颜公子 » CentOS7 升级内核到 4.4 以上版本时无法重启

分享

作者

作者头像

Madman

如需 Linux / Python 相关问题付费解答,请按如下方式联系我

0 条评论

暂时还没有评论.

专题系列


Logo - LIFE & SHARE - 王颜公子

Madman 2021. © All Rights Reserved.

粤ICP备18040049号

  • About
  • RSS
  • Sitemap

联系我