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

前言

这个问题存在有一段时间了,之前做的centos7的ISO,在进行内核的升级以后就存在这个问题:

系统盘在板载sata口上是可以正常启动新内核并且能识别面板硬盘

系统盘插在面板口上新内核无法启动,调试发现无法找到系统盘

系统盘插在面板上默认的3.10内核可以正常启动

暂时的解决办法就是让系统插在板载的sata口上,因为当时没找到具体的解决办法,在这个问题持续了一段时间后,最近再次搜索资料的时候,把问题定位在了initramfs内的驱动的问题,并且对问题进行了解决

解决过程

查询initramfs的驱动

[root@lab103 lab103]# lsinitrd -k 3.10.0-327.el7.x86_64|grep mpt[23]sas
drwxr-xr-x 2 root root 0 Apr 17 12:05 usr/lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/scsi/mpt2sas
-rw-r--r-- 1 root root 337793 Nov 20 2015 usr/lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/scsi/mpt2sas/mpt2sas.ko

可以看到在3.10内核的时候是mpt2sas驱动

可以在4.x内核中看到

新版的内核已经把mpt2sas升级为mpt3sas

/lib/modules/4.4.46/kernel/drivers/scsi/mpt3sas/mpt3sas.ko

查询initramfs内的模块

lsinitrd -k  4.4.46|grep mpt[23]sas

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

这个地方有两种方式来解决

方法一:

修改 /etc/dracut.conf文件,增加字段

add_drivers+=”mpt3sas”

重新生成initramfs

dracut -f /boot/initramfs-4.4.46.img 4.4.46

方法二:

强制加载驱动

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

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

lsinitrd -k  4.4.46|grep mpt[23]sas

如果有输出就是正常了的

然后重启操作系统即可

总结

目前出现这个问题的原因不清楚来自内核还是dracut生成的地方,如果遇到这个问题就按照上面的方法进行处理下即可解决,问题能找到解决办法后就会发现只是小问题,没找到的时候,完全不知道问题在哪里

Centos7从3.10升级内核到4.9后无法启动解决办法:mpt[23]sas驱动问题的更多相关文章

  1. Centos7升级内核后无法启动解决办法

    前言 这个问题存在有一段时间了,之前做的centos7的ISO,在进行内核的升级以后就存在这个问题: 系统盘在板载sata口上是可以正常启动新内核并且能识别面板硬盘 系统盘插在面板口上新内核无法启动, ...

  2. 编译内核出错:invalid option `abi=aapcs-linux' 解决办法

    出现此问题的原因是由于kernel feature中选中了Use the ARM EABIto compile the kernel引起的,有两各解决办法: 1)换编译器为arm-linux-gcc ...

  3. 树莓派(Raspberry Pi 3)安装centos7后yum无法使用解决办法

    树莓派(Raspberry Pi 3)安装centos7后yum无法使用解决办法 人穷,闲鱼淘了个二手的树莓派3 英国版,无奈咱也不会用,很无奈~ 安装教程百度到的差不多都可以,找个格式正常的一步一步 ...

  4. fastDfs V5.02 升级到 V5.08版本后,启动报错:symbol lookup error: /usr/bin/fdfs_trackerd: undefined symbol: g_current_time

    /libfastcommon-1.0.36 # ./make.sh cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o hash.o ...

  5. CentOS7在VMWare12中安装后不能上网解决办法

    首先要保证你的VMWare Workstation12 在安装号CentOS7后没改动什么关于网络相关的. 1.我的电脑一开始用的是VMWare WorkStations10,发现VMnet8根本不通 ...

  6. [效果不错] nginx 高并发参数配置及linux内核参数优化,完整的内核优化设置。PHP-FPM高负载解决办法。

    背景:对vps小资源的实践中对,https://justwinit.cn/post/7536/ 的再优化,再实践,再优化,特别是Nginx,PHP,内核: 零)Nginx: error_log /da ...

  7. ubuntu python3.5升级3.6后打不开终端的解决办法

    ubuntu python3.5升级3.6后打不开终端了. 解决办法如下: 1.Ctrl+Alt+F1进入命令行终端,我的电脑按Ctrl+Alt+F1没反应,按住Ctrl+Alt然后从F1到F5一个个 ...

  8. tomcat 8.0安装ssl证书,及centos7.2 的openssl升级到最新版本,及ERR_SSL_OBSOLETE_CIPHER错误解决

    openssl官网https://www.openssl.org/source/下载最新的文件 2017-Feb-16 12:03:39 openssl-1.1.0e.tar.gz 安装的时候,可能由 ...

  9. centos7 真实机安装后没有网卡解决办法

    我们在真实机安装完centos7版本后,会发现没有网卡,只有lo口 因为真实机不同你在虚拟机里面,这个时候我们不能连网,更加不要说配置什么静态ip了 是什么原因呢,是因为有些真实机安装了centos系 ...

随机推荐

  1. posix线程库1

    posix线程库重要的程度不言而喻,这些天学习这个,参考 https://www.ibm.com/developerworks/cn/linux/thread/posix_thread1/   首先先 ...

  2. 35岁,成就寥寥,为时已晚?(I am 35 and I haven't achieved much in life. Is it too late?)

    今天无意中看到Quora上的一个问题: I am 35 and I haven't achieved much in life. Is it too late? 下面的一个排第二的回复我蛮喜欢的,直接 ...

  3. cat<<EOF获取标准输入到文件中

    原文:http://blog.csdn.net/apache0554/article/details/45508631 ---------------------------------------- ...

  4. Spring 计时器 @Scheduled cron 含义

    Spring 计时器 @Scheduled cron 含义 学习:http://blog.csdn.net/prisonbreak_/article/details/49180307 http://b ...

  5. PyQt5学习随笔01--计算一个目录里我们码的代码行数&amp;&amp;PyQt的多线程通信

    今天突然想知道自学习Python以来我一共码了多少行代码了,于是写了一个简单的程序: __author__ = 'jiangzhiheng' # coding=utf-8 from PyQt5.QtC ...

  6. NSThread/NSOperation/GCD 三种多线程技术

    1.iOS的三种多线程技术 1.NSThread 每个NSThread对象对应一个线程,量级较轻(真正的多线程) 2.以下两点是苹果专门开发的“并发”技术,使得程序员可以不再去关心线程的具体使用问题 ...

  7. 大数据处理之道(实验方法&lt;二&gt;)

    一:交叉验证(crossvalidation)(附实验的三种方法)方法简单介绍   (1) 定义:交叉验证(Cross-validation)主要用于建模应用中,比如PCR(Principal Com ...

  8. 一个效果非常华丽的仿桌面APP,却胜似Launcher

    开发Android APP的同学是否对于Launcher实现的绚丽效果而痴迷呢?什么.连Android Launcher是什么都不知道.好吧,拿起侬的手机.在解锁后的首页界面上左右滑动滑动,体验体验, ...

  9. ubuntu下eclipse连接mysql

    提示:一定要保证电脑处于联网状态 我们要下载一个mysql-connector-java-5.0.8-bin.jar的东西(当然这个jar包的版本号和你的mysql版本号的关系不是非常大),放到你新建 ...

  10. jquery选中表格的某行变色

    <tr ng-click="+"selectRow("+i+");"+" ng-mouseover="+"chan ...