收到RAID进入降级状态的消息:
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 sda1[0] sdb1[1] 524224 blocks [2/2] [UU] md2 : active raid10 sda5[0] sdb5[1] sdd5[3] sdc5[2](F) 1128864768 blocks super 1.2 512K chunks 2 near-copies [4/3] [UU_U] md1 : active raid10 sda2[0] sdb2[1] sdc2[2] sdd2[3] 41909248 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU] unused devices: <none>
login到服务器并删除故障磁盘(未将其标记为失败):
#> mdadm --manage /dev/md2 --remove /dev/sdc5
这是目前的状况:
#> cat /proc/mdstat Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 sda1[0] sdb1[1] 524224 blocks [2/2] [UU] md2 : active raid10 sda5[0] sdb5[1] sdd5[3] 1128864768 blocks super 1.2 512K chunks 2 near-copies [4/3] [UU_U] md1 : active raid10 sda2[0] sdb2[1] sdc2[2] sdd2[3] 41909248 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU] unused devices: <none>
更多细节:
#> mdadm --detail /dev/md2 /dev/md2: Version : 1.2 Creation Time : Sun Apr 6 13:42:43 2014 Raid Level : raid10 Array Size : 1128864768 (1076.57 GiB 1155.96 GB) Used Dev Size : 564432384 (538.28 GiB 577.98 GB) Raid Devices : 4 Total Devices : 3 Persistence : Superblock is persistent Update Time : Wed Jun 3 10:29:14 2015 State : active, degraded Active Devices : 3 Working Devices : 3 Failed Devices : 0 Spare Devices : 0 Layout : near=2 Chunk Size : 512K Name : yyc-controller:2 UUID : c9fe371a:2c8345bf:68054eba:bb4d78aa Events : 41545 Number Major Minor RaidDevice State 0 8 5 0 active sync /dev/sda5 1 8 21 1 active sync /dev/sdb5 2 0 0 2 removed 3 8 53 3 active sync /dev/sdd5
现在我试图添加它,但它失败了:
#> mdadm --manage /dev/md2 --add /dev/sdc5 mdadm: add new device failed for /dev/sdc5 as 4: Invalid argument
如何添加磁盘作为数字2而不是删除?
如果确实是相同的驱动器/分区,则可以使用--re-add开关,如下所示: mdadm --manage /dev/md1 --re-add /dev/sdc5 。 有关如何工作的更多信息,请参阅此处。 我强烈推荐一个好的备份之前,搞乱它。
我有一个类似的问题。 一个raid1的磁盘有一些问题,我已经从raid中删除了整个磁盘。 在破坏性的badblocks检查写随机模式后,磁盘的四个分区中的三个可以被加回到RAID没有问题。 只有最后一个分区失败,出现上述错误。 系统日志报告:
md: sdb4 does not have a valid v1.2 superblock, not importing!
我不想停止RAID并完全重build它,正如有时候build议的那样,但我可以通过清零随机模式来解决这个问题,其中mdadm似乎用dd来查找一些超级块,如字节:
dd of=/dev/sdb4 if=/dev/zero bs=1M count=1
之后,mdadm可以无误地添加分区。