在 CentOS 上“找不到驱动”是一个比较常见但原因很多的问题。下面按常见原因 → 排查思路 → 解决办法给你梳理一下,方便对号入座。
CentOS 使用 特定内核版本,很多第三方驱动(如网卡、显卡、RAID 卡)只支持某一内核。
.ko 文件检查:
uname -r
查看驱动是否匹配当前内核:
ls /lib/modules/$(uname -r)/kernel/drivers/
驱动可能:
查看是否已加载:
lsmod | grep 驱动名
查看是否有该模块:
modinfo 驱动名
CentOS 7 / 8 内核偏旧,新网卡、新显卡经常找不到驱动。
例如:
解决方式:
kernel-devel / kernel-headers编译驱动时最常见错误。
必须安装:
yum install kernel-devel kernel-headers
⚠️ 版本必须和当前内核一致:
rpm -qa | grep kernel
例如:
示例(ELRepo):
yum install kmod-驱动名
CentOS + UEFI + Secure Boot
→ 未签名驱动直接被拦
表现:
modprobe 失败dmesg 里有 required key not available解决:
# 1. 看硬件
lspci
# 2. 看系统日志
dmesg | tail -50
# 3. 看有没有对应模块
modprobe 驱动名
# 4. 看是否缺依赖
yum install kernel-devel
lspci 输出我可以直接告诉你: