软 RAID 巡检入口
md 阵列有两个日常入口:/proc/mdstat 适合一眼看全局,用方括号里的字母直观表示每个成员盘是否正常;mdadm --detail 给出盘级细节、状态位、条带参数与重建进度。两者配合使用,再叠加 mdadm --examine 看单块盘上的元数据,基本能覆盖软 RAID 的日常巡检与排障场景。
巡检命令组合
巡检命令组合
cat /proc/mdstat # 全局:级别、成员状态、同步进度
mdadm --detail /dev/md0 # 细节:状态位、成员盘、条带与 UUID
mdadm --detail --scan # 输出可写入 mdadm.conf 的配置行
mdadm --examine /dev/sdb1 # 看单块盘上的阵列元数据
cat /sys/block/md0/md/sync_action # 当前同步动作(idle/check/resync)关键状态字段
| 字段 | 含义 | 异常示例 |
|---|---|---|
| State | 阵列整体状态 | clean / degraded / resyncing / inactive |
| Active Devices | 在线成员盘数 | 3/4 表示缺一块盘 |
| Working Devices | 可用盘数(含热备) | 与 Active 不一致说明有盘在待命或异常 |
| Failed Devices | 故障盘数 | 大于 0 必须处理 |
| Spare Devices | 热备盘数量 | 0 表示坏盘后需人工介入 |
| Resync / Recovery | 同步或重建进度 | 显示百分比与预计剩余时间 |
| Chunk Size | 条带元素大小 | 与规划值不一致要核对建阵列记录 |
日常巡检动作
- 每天看一次 /proc/mdstat,确认没有下划线与 resync 字样
- 每周用 mdadm --detail 核对成员盘序列号与槽位台账是否一致
- 每月或每季度执行一次数据巡检(echo check),把静默坏道提前暴露
- 把同步动作与进度纳入监控,重建中或校验中的告警要能区分对待
从状态到动作
- [UUUU] 且无 resync:正常,按常规周期执行数据巡检即可
- 出现下划线且 Failed Devices 为 1:立即定位坏盘、核对序列号并按流程换盘
- 状态 inactive 或成员缺失过多:先停止写入、确认数据可读性,再决定是否强制组装
- sync_action 显示 resync 或 recovery:属正常运行,但要压低业务负载并监控进度
degraded 状态的阵列仍可正常读写,只是失去了容错;重建进度与预计完成时间可以直接在 /proc/mdstat 里读到,不必额外工具。