Centos7公升級核心後無法啟動解決辦法

2022-06-15 09:18:10 字數 1455 閱讀 7493

這個問題存在有一段時間了,之前做的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源 然...