首页/系统/服务器硬件与 RAID 速查/RAID 驱动与内核模块检查
阵列卡管理68 条

RAID 驱动与内核模块检查

Linux 上 RAID 卡由内核模块驱动(megaraid_sas、mpt3sas、smartpqi 等):版本过旧会造成性能与兼容问题,升级前核对发行版支持矩阵。

RAID 驱动与内核模块是什么

Linux 上 RAID 卡由内核模块驱动:megaraid_sas 对应 MegaRAID 系列,mpt3sas 对应 SAS3 代的 HBA 与 IR 卡,smartpqi 对应较新的智能阵列。模块版本与控制器固件、操作系统发行版三者需要按厂商兼容表匹配,版本过旧会带来性能退化或识别异常。换整机恢复与救援场景中,驱动版本差异还可能导致盘符与设备顺序变化。

基本信息

适用平台各主流 Linux 发行版,模块随内核或由厂商驱动包提供
常见模块megaraid_sas、mpt3sas、smartpqi、hpsa(HPE 相关环境)
查看方式modinfo 看模块版本与来源,lspci -k 看在用驱动
升级来源发行版仓库或厂商驱动包(DKMS、ISO 驱动盘)
权限要求读取信息普通用户即可,加载与卸载模块需要 root

典型使用场景

  • 装机前兼容性核对:确认发行版自带驱动是否支持该控制器型号
  • 性能问题排查:对比模块版本与厂商推荐版本,判断是否需要升级驱动
  • 救援与恢复:整机更换后确认驱动能识别原阵列与盘序
  • 变更前留档:记录驱动与固件版本组合,便于升级后对比
  • 故障定位:确认设备究竟由哪个驱动接管,排除模块错配

检查驱动与设备

检查驱动与设备
modinfo megaraid_sas | grep -E "^version|^srcversion|^filename"  # 模块版本与来源
modinfo mpt3sas | grep -E "^version|^filename"  # 另一常见 SAS 模块
lsmod | grep -E "megaraid|mpt3sas|smartpqi"  # 当前已加载的存储模块
lspci -nn | grep -i -E "raid|sas"  # 控制器硬件识别
lspci -k -d ::0104  # 逐个 RAID 总线设备看在用的内核驱动

输出字段读法

字段含义判断要点
version模块自身版本号与厂商兼容表比对
srcversion源码版本标识同版本号不同构建时用于区分
filename模块文件路径判断是发行版自带还是额外安装
Kernel driver in use实际接管的驱动确认没有出现错配或回退
更换整机恢复时先核对目标机的模块版本与原机是否一致:驱动差异可能导致设备命名顺序变化,进而影响挂载与启动。
用非常规渠道自行编译驱动后,发行版内核升级会让模块失效,救援现场容易出现缺驱动无法识别阵列的窘境。

易错点

  • 用非常规渠道编译驱动:发行版升级后模块失效,救援现场缺少可用驱动
  • 忽略 lspci -k 的在用驱动字段:无法判断设备是否真的由目标驱动接管
  • 驱动与固件版本随意搭配:不在兼容表内的组合容易出现识别异常或性能退化
  • 版本组合不入档:升级后出问题想回退时,没人说得清原来是什么版本

数据来源与参考

  • Linux 内核文档(megaraid_sas)
  • 各发行版硬件兼容性列表
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌