我有一台配置为 RAID10 的托管服务器。我没有执行原始配置,因此我尝试谨慎处理该场景。根据我的检查,他们在 4 个磁盘上设置了 x3 RAID10 阵列(md0、md1、md2)。
初始启动后,mdadm 开始抛出错误并因为未知的 UUID 而掉入 shell。md0 和 md1 看起来很好,但是 md2 显示 x2 磁盘被踢出(非新鲜)然后组装失败。
我希望能够将 sdb5 添加回阵列并从那里重建。sda5 显示事件计数低,而 sdb5 显示与 x2 活动磁盘(sdc5、sdd5)相同的事件计数。
他们目前正在配置一个额外的驱动器用于恢复。一旦准备就绪,就会运行 ddrescue。我对如何继续有一些想法。我知道我可以运行强制汇编,但在获得备份之前不想采取任何行动。我对软件 raid 有一些经验,主要是 ZFS。我想从常驻专家那里获得一些关于我正在关注的问题和最佳前进方向的见解。
详情如下。抱歉,所有屏幕都显示不全,但我正在通过 IPMI KVM 工作。如果您需要更多信息,请告诉我。
dmesg:
md: kicking non-fresh sda5 from array
md: kicking non-fresh sdb5 from array
...
md:raid10/md2: not enough operational mirrors
猫/ proc / mdstat:
mdadm -D /dev/md2:
mdadm --misc --检查 /dev/sda5:
mdadm——misc——检查/dev/sdb5:
mdadm——misc——检查/dev/sdc5:
答案1
我通过以下步骤成功修复了驱动器......
- 用过的救援将 (x4) 磁盘克隆到附加存储:
sudo ddrescue --verbose --idirect --no-scrape /dev/sda5 /mnt/backup/sda5.img /dev/backup/sdb5.logfile
- 使用干净的成员组装阵列:
mdmadm -a --force /dev/md2 /dev/sd[bcd]5
- 将成员 0 添加回阵列并等待重建完成。一切顺利(我目前正在迁移到新的提供商)。