Linux RAID故障恢复核心是“先标记、再移除、后替换”,需依次执行cat /proc/mdstat和mdadm --detail定位故障盘,--fail标记、--remove移除,分区设为Linux RAID auto类型后--add加入,重建完成确认active sync并更新mdadm.conf。

Linux 服务器硬件故障更换,核心是“先确认、再隔离、后替换、最后验证”,整个过程需兼顾数据安全、业务连续性和操作规范性。软 RAID 环境下尤其不能跳过标记与移除步骤,否则可能引发阵列异常或重建失败。
一、快速定位并确认故障硬件
不靠猜测,靠日志和状态输出:
- 运行 cat /proc/mdstat 查看 RAID 整体状态,关注是否出现 (F)(failed)或 degraded 标识
- 执行 sudo mdadm --detail /dev/md0(将 md0 替换为你的阵列名),确认哪块设备显示为 faulty 或 failed(如 /dev/sdc1)
- 检查系统日志:sudo journalctl -u mdadm.service | grep -i "fail\|error\|ata",辅助判断是否为物理层故障(如 SMART 报错、链路中断)
- 用 sudo smartctl -a /dev/sdc 检查硬盘健康状态(需安装 smartmontools),重点关注 Reallocated_Sector_Ct、Current_Pending_Sector 和 UDMA_CRC_Error_Count
二、安全隔离故障盘(严禁直接拔插)
RAID 运行中必须通过软件指令通知内核该盘已不可信:
- 主动标记失效:sudo mdadm --manage /dev/md0 --fail /dev/sdc1
- 从阵列中移除:sudo mdadm --manage /dev/md0 --remove /dev/sdc1
- 再次运行 mdadm --detail /dev/md0,确认该设备已显示为 removed,且 Working Devices 数量减少 1
- 此时 RAID 仍可读写(RAID5 允许单盘降级),业务不受影响
三、物理更换与新盘准备
断电操作更稳妥,热插拔需谨慎(部分主板/背板支持,但盘符易变):
- 关闭服务器:sudo shutdown -h now,待电源指示灯熄灭后再操作
- 佩戴防静电手套,拆机定位故障槽位(参考服务器标签或 LCD 面板告警灯)
- 拔出旧盘,插入新盘(建议同品牌、同容量、同固件版本;若无法完全一致,容量不得小于原盘)
- 开机启动后,用 lsblk 或 lshw -class disk 确认新盘被识别(如 /dev/sde)
- 对新盘分区并设 RAID 类型:fdisk /dev/sde → n → t → fd → w(分区类型必须为 Linux RAID auto)
四、加入阵列并验证重建
重建不是瞬间完成,需监控进度并固化配置:
- 添加新分区进阵列:sudo mdadm --manage /dev/md0 --add /dev/sde1
- 实时观察重建:watch -n 2 cat /proc/mdstat,状态应显示 recovery 或 spare rebuilding
- 等待状态变为 active sync,且无 recovery 字样;再执行 mdadm --detail /dev/md0 确认所有设备状态正常
- 更新配置文件防止重启丢失:sudo mdadm --detail --scan >> /etc/mdadm.conf(Debian/Ubuntu 可能为 /etc/mdadm/mdadm.conf),必要时重生成 initramfs:sudo update-initramfs -u(Debian系)或 sudo dracut -f(RHEL/CentOS系)
不复杂但容易忽略


















