内核升级后无法启动(initramfs 缺驱动,典型如存储控制器从 mpt2sas 到 mpt3sas)
- 查看旧/新内核模块与 initramfs 是否包含驱动:lsinitrd -k 3.10.0-327.el7.x86_64 | grep mpt[23]saslsinitrd -k 4.4.46 | grep mpt[23]sas
- 将缺失驱动打入 initramfs(二选一):
- 修改配置并重建:echo ‘add_drivers+=“mpt3sas”’ >> /etc/dracut.confdracut -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 有输出后再重启。
NVIDIA 驱动失效(nvidia-smi 报错无法通信,常见于内核升级)
- 切回旧内核启动(临时方案):grub2-set-default ‘CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)’grub2-editenv listreboot
- 在新内核上重建 DKMS 模块(推荐):yum install -y dkms
查看已存驱动版本目录:ls -l /usr/src/ | grep nvidia
dkms install -m nvidia -v 470.82.01 - 若仍异常,按当前运行内核重装驱动(安装器需匹配内核头文件):bash NVIDIA-Linux-x86_64-440.82.run --no-opengl-files --kernel-source-path=$(uname -r)
- 如与 ACPI 冲突导致黑屏/卡登录,可在启动时临时加 acpi=off 进入系统后再调整驱动或重装。
网卡驱动缺失(ifconfig 仅 lo,或 lspci 识别到网卡但无驱动)
- 确认硬件与驱动:lspci | grep -i ethernetethtool -i eth0
- 无编译环境时,用 CentOS ISO 制作本地 YUM 源,安装 gcc 与对应 kernel-devel;或提取 RPM 手动安装依赖。
- 获取并编译安装官方驱动(以 Broadcom NetXtreme II BCM5709 为例):rpm -ivh netxtreme2-6.0.53-1.src.rpmcd /usr/src/redhat/SPECS && rpmbuild -bb netxtreme2.speccd …/RPMS/x86_64 && rpm -ivh netxtreme2-6.0.53-1.x86_64.rpmrmmod bnx2 && modprobe bnx2
- 验证:ip a 能看到 eth0 即恢复。