设置:mdadm 管理的 RAID5 阵列中的 8 个磁盘(/dev/md0,由 /dev/sdc 到 /dev/sdj 组成)。一个磁盘(/dev/sdh)显示 SMART 错误(待处理扇区数增加),因此我想更换它。此外,机器从 PCIe 插槽中配置了 RAID0 条带的 Revodrive SSD 启动。
奇怪的是:mdadm --detail 输出显示阵列是干净的,并且一切看起来运行良好(我可以毫无问题地挂载、读取、写入阵列)。每个磁盘的 mdadm --examine 输出都显示阵列状态为失败。
root@saturn:/backup# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid5 sdi1[6] sdj1[8] sdh1[5] sdg1[4] sdf1[3] sde1[2] sdd1[1] sdc1[0]
20511854272 blocks super 1.0 level 5, 64k chunk, algorithm 2 [8/8] [UUUUUUUU]
unused devices: <none>
proc 表仅显示 mdadm 管理的 SATA 驱动器阵列,而不是 revodrive,我期望 revodrive RAID 应该由其自己的硬件控制器管理。
root@saturn:/backup# mdadm --detail /dev/md0
mdadm: metadata format 01.00 unknown, ignored.
/dev/md0:
Version : 01.00
Creation Time : Wed Apr 20 10:14:05 2011
Raid Level : raid5
Array Size : 20511854272 (19561.63 GiB 21004.14 GB)
Used Dev Size : 5860529792 (5589.04 GiB 6001.18 GB)
Raid Devices : 8
Total Devices : 8
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Mon Sep 19 13:42:21 2011
State : clean
Active Devices : 8
Working Devices : 8
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 64K
Name : saturn:0 (local to host saturn)
UUID : e535a44b:b319927e:4a574c20:39fc3f08
Events : 45
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 49 1 active sync /dev/sdd1
2 8 65 2 active sync /dev/sde1
3 8 81 3 active sync /dev/sdf1
4 8 97 4 active sync /dev/sdg1
5 8 113 5 active sync /dev/sdh1
6 8 129 6 active sync /dev/sdi1
8 8 145 7 active sync /dev/sdj1
显然,第一行中存在元数据格式错误,这是 mdadm.conf 中自动生成的元数据标志造成的,但这是在 Ubuntu 上运行的 mdadm v2.6.7.1,我将其归结为已知问题
root@saturn:/backup# mdadm --examine /dev/sdc1
mdadm: metadata format 01.00 unknown, ignored.
/dev/sdc1:
Magic : a92b4efc
Version : 1.0
Feature Map : 0x0
Array UUID : e535a44b:b319927e:4a574c20:39fc3f08
Name : saturn:0 (local to host saturn)
Creation Time : Wed Apr 20 10:14:05 2011
Raid Level : raid5
Raid Devices : 8
Avail Dev Size : 5860529904 (2794.52 GiB 3000.59 GB)
Array Size : 41023708544 (19561.63 GiB 21004.14 GB)
Used Dev Size : 5860529792 (2794.52 GiB 3000.59 GB)
Super Offset : 5860530160 sectors
State : clean
Device UUID : 1b508410:b129e871:d92c7979:30764611
Update Time : Mon Sep 19 13:52:58 2011
Checksum : 2e68592 - correct
Events : 45
Layout : left-symmetric
Chunk Size : 64K
Array Slot : 0 (0, 1, 2, 3, 4, 5, 6, failed, 7)
Array State : Uuuuuuuu 1 failed
但在 --examine 输出中,阵列状态为失败。每个磁盘似乎都显示自己是失败的成员 - /dev/sdd 显示乌uuuuuu,/dev/sde 显示 uu乌uuuuu 等等——但全部显示上一行第 6 个和第 7 个插槽之间的神秘第 9 个“失败”插槽。
我猜磁盘超级块有问题,尽管一切都正常。我想在更换可疑磁盘之前先修复这个问题,因为我有点担心如果驱动器发生故障,磁盘会如何表现。我最好的处理方法是什么?
答案1
您需要将 mdadm 至少更新到版本 v3.1.1。 这个错误描述您遇到的问题以及如何更新 mdadm 表明新的超级块格式现在被正确解释。
答案2
与您和 Andrew 的想法一样:md-superblock 似乎存在问题。
对包含超级块的驱动器执行故障/删除/零超级块/添加操作也是如此。