這個問題存在有一段時間了,之前做的centos7的iso,在進行核心的公升級以後就存在這個問題:
暫時的解決辦法就是讓系統插在板載的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生成的地方,如果遇到這個問題就按照上面的方法進行處理下即可,問題能找到解決辦法後就會發現只是小問題,沒找到的時候,完全不知道問題在**
whywho
when
建立武漢-運維-磨渣
2017-06-01
CentOS7公升級核心
步驟1 載入公鑰 步驟2 安裝elrepo 步驟3 載入elrepo kernel元資料 步驟4 檢視可用的rpm包 步驟5 安裝最新版本的kernel yum disablerepo enablerepo elrepo kernel install y kernel ml.x86 64 步驟6 重...
centos7公升級核心
檢視當前系統核心版本 uname r 匯入elpepo倉庫公共金鑰 rpm import如有報錯資訊 curl 35 peer reports incompatible or unsupported protocol version 先執行 yum update y nss curl libcurl...
Centos7 公升級過核心 boot分割槽無法掛載修
參考連線 故障圖 掛載系統盤,光碟啟動,急救模式,chroot mnt sysimage 報錯 拷貝bash到指定目錄 先在 mnt sysimage建立bin目錄 然後複製 bin bash 到 mnt sysimage bin 掛載光碟機到 media cdrom目錄,然後配置光碟為yum源 然...