今天早上我来到办公室,发现 RAID-6、3ware 9650SE 控制器上的两个驱动器被标记为降级,它正在重建阵列。在达到大约 4% 后,它在第三个驱动器上出现 ECC 错误(这可能发生在我尝试访问此 RAID 上的文件系统并从控制器收到 I/O 错误时)。现在我处于这种状态:
> /c2/u1 show
Unit UnitType Status %RCmpl %V/I/M Port Stripe Size(GB)
------------------------------------------------------------------------
u1 RAID-6 REBUILDING 4%(A) - - 64K 7450.5
u1-0 DISK OK - - p5 - 931.312
u1-1 DISK OK - - p2 - 931.312
u1-2 DISK OK - - p1 - 931.312
u1-3 DISK OK - - p4 - 931.312
u1-4 DISK OK - - p11 - 931.312
u1-5 DISK DEGRADED - - p6 - 931.312
u1-6 DISK OK - - p7 - 931.312
u1-7 DISK DEGRADED - - p3 - 931.312
u1-8 DISK WARNING - - p9 - 931.312
u1-9 DISK OK - - p10 - 931.312
u1/v0 Volume - - - - - 7450.5
Run Code Online (Sandbox Code Playgroud)
检查有问题的三个驱动器上的 SMART 数据,两个 DEGRADED 状态良好(通过,没有任何 Current_Pending_Sector 或 Offline_Uncorrectable 错误),但列为 WARNING 的驱动器有 24 个无法纠正的扇区。
而且,“重建”现在已经停留在 4% 了十个小时。
所以:
我如何让它开始实际重建?这个特定的控制器似乎不支持/c2/u1 resume rebuild
,唯一的重建命令似乎是一个选项,它想知道要添加什么磁盘(/c2/u1 start rebuild disk=<p:-p...> [ignoreECC]
根据帮助)。我在服务器中有两个热备件,我很乐意使用它们,但我不明白在当前状态下它会如何处理这些信息。
当 RAID-6 中有两个降级驱动器时,我可以拔出明显出现故障的驱动器(警告驱动器)吗?在我看来,最好的方案是我拉出 WARNING 驱动器并告诉它在重建中使用我的热备件之一。但是我不会通过在带有两个降级驱动器的 RAID-6 中拉一个“好”驱动器来杀死它吗?
最后,我在其他帖子中看到了该控制器中的一个错误错误的参考,该错误导致良好的驱动器被标记为错误并且升级固件可能会有所帮助。鉴于这种情况,刷新固件是否是一项危险的操作?对于重建但卡在 4% 的 RAID,它可能会有所帮助还是会受到伤害?我在操作中遇到这个错误吗?
灵性之外的建议将不胜感激。谢谢。
我通过在tw_cli
不拉任何驱动器或重新启动系统的情况下发出以下命令,设法使 RAID 重建:
/c2/u1 set ignoreECC=on
Run Code Online (Sandbox Code Playgroud)
重建并没有立即进行,但在我进行此更改后的凌晨 2 点,重建开始了,大约 6 小时后,它完成了。有 ECC 错误的驱动器有 24 个坏扇区,这些扇区现在已被驱动器覆盖和重新分配(根据 SMART 数据)。文件系统似乎完好无损,但如果我在获取这些扇区上的任何数据时遇到错误,我不会感到惊讶。
无论如何,我比以前好多了,并且可能能够恢复大部分数据。一旦我得到了我能做的一切,我就会弹出出现故障的驱动器,并将其重建到热备件上。