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 使用speedtest命令行测试网速

    安装speedtest-cli speedtest-cli是一个用Python编写的轻量级Linux命令行工具,在Python2.4至3.4版本下均可运行。它基于Speedtest.net的基础架构来测量网络的上/下行速率。安装speedtest-cli很简单——只需要下载其Python脚本文件。 使用speedtest-cli测试网速 输入这个命令后,它会…

    2022年6月28日
    1.4K00
  • MySQL 如何使用离线模式维护服务器

    离线模式 作为 DBA,最常见的任务之一就是批量处理 MySQL 服务的启停或其他一些活动。在停止 MySQL 服务前,我们可能需要检查是否有活动连接;如果有,我们可能需要把它们全部杀死。通常,我们使用 pt-kill 杀死应用连接或使用 SELECT 语句查询准备杀死语句。例如: MySQL 有一个名为 offline_mode 的变量…

    2023年10月20日
    1.1K00
  • Centos7安装postgresql数据库

    1.更新源 2.安装postgresql 3.初始化数据库 4.启动数据库并设置开机启动 5.登录postgresql并设置密码 postgresql在安装时默认添加用户postgres 输入 psql 进入数据库是这样的 设置密码: 退出按:q 备注其他:列出所有库l 列出所有用户du 列出库下所有表d 6.重启数据库: 7 创建数据库跟用户 因为post…

    2023年4月11日
    1.3K00
  • Centos7系统如何查看系统日志

    Systemd是Linux系统工具,Systemd拥有强大的解决与系统日志记录功能-systemd-journald。日志目录一般是在/var/log/journal,记录的是二进制文件,我们可以通过journalctl进行查看。 日志的配置文件是/etc/systemd/journald.conf。 常用的操作有哪些呢 显示所有日志 查看系统本次启动只有的…

    2022年6月15日
    2.9K00
  • Centos7删除多余的内核

    Linux下可能会存在有多个内核的情况,通过某一内核启动会出现无法登录的情况,这时我们就要选择可以正常登录的内核,成功进入系统后,将多余的内核删除 检查系统中的内核 使用yum remove 或rpm -e 删除无用内核

    2022年6月25日
    1.4K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信