Centos7升级内核后无法启动解决办法:mpt[23]sas驱动问题

entOS 7.* 从内核 3.10.0 升级到 5.*.*后,重启不了,原因是 Linux 内核 4.4.x 版本之后,dracut 命令生成的 initramfs 默认不会自动加载 mpt3sas 驱动模块。因为没有对应的驱动程序,所以识别不了系统盘

1. 查询3.10.0 initramfs的驱动

[root@localhost ~]# lsinitrd -k 3.10.0-957.el7.x86_64 | grep mpt[23]sas(3.10.0-957.el7.x86_64对应相应的内核目录 )
drwxr-xr-x 2 root root 0 Nov 12 19:24 usr/lib/modules/3.10.0-957.el7.x86_64/kernel/drivers/scsi/mpt3sas
-rw-r--r-- 1 root root 92972 Nov 9 2018 usr/lib/modules/3.10.0-957.el7.x86_64/kernel/drivers/scsi/mpt3sas/mpt2sas.ko.xz
[root@localhost ~]#

可以看到在3.10内核的时候是mpt2sas驱动,可以在5.x内核中看到,新版的内核已经把mpt2sas升级为mpt3sas

[root@localhost ~]# ls /usr/lib/modules/5.3.6-1.el7.elrepo.x86_64/kernel/drivers/scsi/mpt3sas/mpt3sas.ko 
/usr/lib/modules/5.3.6-1.el7.elrepo.x86_64/kernel/drivers/scsi/mpt3sas/mpt3sas.ko
[root@localhost ~]#


查询5.3.6 initramfs的驱动, 可以看到并没有输出,说明initramfs并没有把这个驱动打进去

[root@localhost ~]# lsinitrd -k 5.3.6-1.el7.elrepo.x86_64 | grep mpt[23]sas(5.3.6-1.el7.elrepo.x86_64对应相应的内核目录)

2. 两种解决方法:
方法1:
1). 修改 /etc/dracut.conf文件,增加字段

sed -i '/#add_drivers+=""/aadd_drivers+="mpt3sas"' /etc/dracut.conf(直接输入命令)


2)重新生成initramfs

cd /boot/
mv initramfs-5.3.6-1.el7.elrepo.x86_64.img{,.bak}(备份原先启动文件 可跳过)
dracut -f /boot/initramfs-5.3.6-1.el7.elrepo.x86_64.img 5.3.6-1.el7.elrepo.x86_64(5.3.6-1.el7.elrepo.x86_64对应相应的内核目录)

方法2:
强制加载驱动

dracut --force --add-drivers mpt3sas --kver=5.3.6

以上方法二选一做下驱动的集成,然后做下面的检查

lsinitrd -k 5.3.6-1.el7.elrepo.x86_64 | grep mpt[23]sas(5.3.6-1.el7.elrepo.x86_64对应相应的内核目录)

如果有输出就是正常了的, 然后重启操作系统即可

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/8137

(0)
郭靖的头像郭靖
上一篇 2023年5月5日 下午5:13
下一篇 2023年5月8日 下午3:51

相关推荐

  • CentOS 7 磁盘挂载教程

    mount命令是经常会使用到的命令,它用于挂载Linux系统外的文件 进行挂载操作后,用户便可以在挂载目录中使用硬盘资源了。默认情况下Linux系统并不会像Windows系统那样自动的挂载光盘和U盘设备,需要自行完成。 语法 语法格式:mount [参数] [设备] [挂载点] 常用参数 -t 指定文件系统,即挂载类型 -l 显示已加载的文件系统列表 -h …

    2022年6月9日
    3.4K10
  • 在 Linux 上以 All-in-One 模式安装 KubeSphere

    步骤 1:准备 Linux 机器 若要以 All-in-One 模式进行安装,您仅需参考以下对机器硬件和操作系统的要求准备一台主机。 硬件推荐配置 操作系统 最低配置 Ubuntu 16.04, 18.04, 20.04, 22.04 2 核 CPU,4 GB 内存,40 GB 磁盘空间 Debian Bus…

    2023年4月18日
    1.3K00
  • 解决crond引发大量sendmail、postdrop进程导致内存使用过大问题

    现象:客户反馈机器卡顿,上面只运行了一个宝塔,疑似中了木马 分析过程:top发现内存使用过高,ps -aux发现大量postdrop、sendmail、crond进程,而postdrop是由sendmail启动的,sendmail是由crond启动的。 crond在执行脚本时会将脚本输出信息以邮件的形式发送给系统用户,所以必然要调用sendmail,而sen…

    2022年12月6日
    2.2K00
  • lscpu 查看 CPU 信息

    lscpu 显示 CPU 的架构信息 lscpu 从 sysfs 和 proc/cpuinfo 中收集信息。这个命令的输出是规范的可以用来解析,或者给人来阅读。该命令显示的信息包括,CPU 的数量,线程 (thread),核心 (core),Socket 还有 Non-Uniform Me…

    2023年9月25日
    1.5K00
  • SonarQube支持Gitlab授权登录

    背景 部署好SonarQube之后,由于我们内部使用的是自建的Gitlab仓库,即每个开发同学都有Gitlab账号,SonarQube我们就可以使用上Gitlab登录,这样就不需要再维护一套用户体系了。 环境: SonarQube8.9.2 社区版 GitLab Enterprise Edition 11.10.4-ee 具体配置: Gitlab 配置: 在…

    2023年1月20日
    1.7K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信