系统重启后/dev/md0消失但数据完好,需手动装配RAID阵列:先用lsblk和mdadm --examine确认成员盘及元数据,卸载所有相关分区,再通过设备路径、UUID或--scan方式装配,最后验证状态并挂载测试。

系统重启后/dev/md0设备消失,/proc/mdstat显示空列表,但物理磁盘仍在且数据完好——这说明RAID元数据未损坏,只是内核未自动装配阵列,必须手动触发装配过程。
确认磁盘成员与RAID元数据状态
执行 sudo lsblk -f 查看所有块设备及其文件系统类型,定位疑似原RAID成员盘(如 /dev/sdb、/dev/sdc)。
对每块候选磁盘运行 sudo mdadm --examine /dev/sdX,检查输出中是否含 md UUID 和 events 字段;若出现 no md superblock detected 则该盘不参与当前阵列。
【关键前提】 所有成员盘必须处于未挂载状态,否则装配会失败。用 sudo umount /dev/sdX1 卸载已挂载分区,必要时用 sudo lsof +D /mount/path 查找残留进程。
手工装配已知设备的RAID阵列
方法一:按设备路径直接装配
执行 sudo mdadm --assemble /dev/md0 /dev/sdb /dev/sdc,命令成功返回即表示阵列已激活。
方法二:通过UUID装配(更可靠,避免设备名变动)
先从任意成员盘提取UUID:sudo mdadm --examine /dev/sdb | grep UUID,得到类似 UUID : 12345678:9abcdef0:12345678:9abcdef0 的值。
然后运行 sudo mdadm --assemble --uuid=12345678:9abcdef0:12345678:9abcdef0 /dev/md0。
方法三:全自动扫描装配
执行 sudo mdadm --assemble --scan,该命令读取 /etc/mdadm/mdadm.conf 中记录的阵列信息并尝试装配;若配置文件丢失,则此命令无效。
验证装配结果并挂载使用
第一步:检查阵列是否就绪
运行 cat /proc/mdstat,确认输出中包含 md0 : active raid1 sdb[0] sdc[1] 且末尾无 _U 或 UU 异常标记。
第二步:查看详细状态
执行 sudo mdadm --detail /dev/md0,确认 State : 行显示 clean,Active Devices : 数量与预期一致。
第三步:挂载逻辑卷
若已存在挂载点(如 /mnt/raid1),直接运行 sudo mount /dev/md0 /mnt/raid1;若不存在,先创建目录 sudo mkdir -p /mnt/raid1 再挂载。
第四步:测试读写
进入挂载目录 cd /mnt/raid1,执行 touch test_assemble && ls -l test_assemble,能正常创建并列出文件即表明装配成功且数据可访问。


















