检查RAID阵列运行状态需要区分软件RAID和硬件RAID两类场景,不同场景对应不同的专属检查方法,以下是具体操作步骤:
一、软件RAID(mdadm管理)检查方法
- 查看实时运行状态:执行命令
cat /proc/mdstat,可直接读取内核维护的RAID状态快照,快速识别阵列是否活动、是否处于重建/同步中,通过状态字符(如[UU]代表双盘正常、[_U]代表单盘失效)判断阵列健康度。 - 查看详细元数据:执行命令
sudo mdadm --detail /dev/md0(将/dev/md0替换为实际阵列设备名),可获取RAID级别、成员盘状态、UUID、校验开关等完整结构化信息,确认在线磁盘数量是否符合预期。
二、硬件RAID检查方法
- LSI/Avago(Broadcom)阵列卡:
- 先执行
sudo storcli show确认控制器编号(如c0为主控制器)。 - 再执行
sudo storcli /c0/vall show,重点关注State字段(正常应为Optl最优状态),同时可查看条带大小、缓存策略、重建进度等信息。 - 若使用旧版MegaCLI工具,执行
sudo /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -LAll -aAll查看所有逻辑盘状态,执行对应物理盘查询命令可确认物理磁盘健康情况。
- 先执行
- 惠普Smart Array阵列卡:
- 先执行
sudo hpssacli controller all show确认工具可用,插槽号需按实际输出替换。 - 再执行
sudo hpssacli controller slot=0 logicaldrive all show,正常状态下Status字段应为OK,无Failed标记。
- 先执行
三、通用补充校验要点
- 注意:
lsblk、fdisk -l这类系统通用工具仅能看到阵列暴露的块设备,无法识别底层RAID阵列的健康状态,不能作为阵列状态的判断依据。 - 硬件RAID场景下,
smartctl -a /dev/sda返回的是控制器封装后的抽象状态,无法获取真实物理磁盘的SMART数据,需用对应阵列卡厂商工具查询物理盘健康。 - 若执行查询命令后无任何逻辑盘输出,需先确认控制器编号是否正确,或检查阵列是否处于JBOD/直通模式未配置RAID。

原创文章,作者:余初云,如若转载,请注明出处:https://blog.jidcy.com/jsjc/3326.html
