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 | 实际接管的驱动 | 确认没有出现错配或回退 |
更换整机恢复时先核对目标机的模块版本与原机是否一致:驱动差异可能导致设备命名顺序变化,进而影响挂载与启动。
用非常规渠道自行编译驱动后,发行版内核升级会让模块失效,救援现场容易出现缺驱动无法识别阵列的窘境。