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

相关推荐

  • Tcpdump 命令实际示例,Linux 下功能最强大的网络抓包工具

    tcpdump是最基本、最强大的命令行网络数据包嗅探工具。我们用它来分析服务器的网络数据包,捕获或过滤在特定网络接口上通过网络传输和接收的TCP/IP数据包。 它几乎适用于所有基于Linux/Unix操作系统的服务器。您还可以将捕获的数据包保存在文件中,以便以后使用tcpdump工具进行分析。它将文件保存为pcap格式,可通过tcpdump命令或基于GUI的…

    2023年8月7日
    1.3K00
  • cobbler搭建

    什么是cobbler Cobbler是一个Linux系统安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。 Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。 Cobbler是较早前的kickstart的升…

    2022年11月26日
    1.3K00
  • LAMP环境下部署DiscuzQ

    一、安装Apachae yum安装Apache,并设置开机自启动 在网页浏览器输入ip地址,查看Apache是否正常 二、安装配置 MariaDB 执行以下命令,查看系统中是否已安装 MariaDB。 rpm -qa | grep -i mariadb       返回结果类似如下内容,则表示已存在 MariaDB。 &nbsp…

    2022年12月6日
    1.5K00
  • mysql之两个db实例中有两个表对比

    两个db实例中有两个表对比要确定两个数据库实例中的两个表是否存在差异,你需要比较这两个表的所有数据。这个过程可以通过多种方法实现,以下是几个常见的方法: SQL查询比较如果两个数据库相互可访问(例如,通过数据库链接),你可以编写SQL查询来比较它们的数据。以下是一个简单的例子,演示如何比较两个表的数据: 如果这些查询返回任何行,那么这些行就是两个表之间的差异…

    2024年7月4日
    2.6K00
  • Linux中监测磁盘IO性能

    Linux 存储系统 I/O 栈由文件系统层(file system layer)、通用块层( general block layer)和设备层(device layer)构成。 其中,通用块层是 Linux 磁盘 I/O 的核心。向上,它为访问文件系统和应用程序的块设备提供了标准接口;向下,它将各种异构磁盘设备抽象为一个统一的块设备,并响应文件系统和应用程…

    2022年12月1日
    1.2K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信