我的 RAID 6 阵列(8 个 HDD,mdadm)出现了奇怪的问题。3 个驱动器意外地从阵列中消失,相应的结果是阵列已损坏,但所有 8 个驱动器都完好无损,smartctl 中没有任何错误,其上的分区(/dev/sda1、/dev/sdb1 等)也没有问题。唯一让我感到困惑的是,这 3 个驱动器的分区(sda、sde、sdh)上没有 msftdata 标志:
Disk /dev/sda: 3001GB
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB primary
Disk /dev/sdb: 3001GB
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB primary msftdata
Disk /dev/sdc: 3001GB
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB primary msftdata
Disk /dev/sdd: 3001GB
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB primary msftdata
Disk /dev/sde: 3001GB
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB primary
Disk /dev/sdf: 3001GB
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB primary msftdata
Disk /dev/sdg: 3001GB
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB primary msftdata
Disk /dev/sdh: 3001GB
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB primary
还有一件有趣的事情 - 所有分区都可以通过分区向导访问,并且我能够从 sda、sde、sdh(没有 msftdata 标志的)恢复一些数据。
问题是 - 是否可以使用 parted、fdisk、gpart 等恢复分区结构以重新组装 RAID 6?
谢谢。
答案1
好吧,我成功恢复了我的 RAID 阵列。首先,我更换了所有 SATA 电缆。其次 - 我检查了所有分区:
mdadm --misc --examine /dev/sda1 (sdb1、sdc1 等)
确认所有分区都支持 mdadm、校验和正确、有相同的魔法数字,然后:
mdadm /dev/md0 --assemble /dev/sda1 /dev/sdb1 .... -vf
就这样。阵列已清理,并且已启动并正在运行。