软件 RAID 5 磁盘故障

软件 RAID 5 磁盘故障

我需要一些专家的帮助——任何能载我上路的人都可以免费享用啤酒/咖啡!

我的系统 我正在运行 Ubuntu 11.10,它采用 3 磁盘软件 RAID 5 配置,配备 3TB 硬盘,采用 ext4 格式。

我做了什么 我最近在磁盘实用程序中检查了磁盘的运行状况,发现我的两个驱动器有坏扇区。一切正常,但我有点担心。当我查看 mdadm --detail 时,我可以看到其中一个驱动器出现故障,并且 raid 运行降级。但是,其中一个有几个故障扇区的驱动器实际上没有通过 mdadm 报告故障。

我买了一个新硬盘,并按照步骤更换了 RAID 5 软件配置中出现故障的硬盘。(我将硬盘标记为出现故障,将其移除,关闭计算机,更换它,对新硬盘进行分区,然后将其重新添加到 RAID 中)。这个过程几乎完成了(我认为),但当我再次查看 mdstat 详细信息时,情况看起来比以前糟糕得多。

我现在拥有的

以下是 mdstat --detail /dev/mda127 的输出

root@mediapc:/home/jason# mdadm --detail /dev/md127 
/dev/md127:
        Version : 1.2
  Creation Time : Sun Mar 10 08:57:16 2013
     Raid Level : raid5
     Array Size : 5860530176 (5589.04 GiB 6001.18 GB)
  Used Dev Size : 2930265088 (2794.52 GiB 3000.59 GB)
   Raid Devices : 3
  Total Devices : 3
    Persistence : Superblock is persistent

Update Time : Sun Mar 16 06:48:06 2014
      State : clean, FAILED
Active Devices : 1
Working Devices : 2
Failed Devices : 1
Spare Devices : 1

     Layout : left-symmetric
 Chunk Size : 512K

       Name : mediapc:127  (local to host mediapc)
       UUID : ffbed825:f397afb1:86535cd8:64f8c314
     Events : 373600

Number   Major   Minor   RaidDevice State
   0       8        1        0      active sync   /dev/sda1
   1       0        0        1      removed
   2       0        0        2      removed

   3       8       32        -      faulty spare   /dev/sdc
   4       8       17        -      spare   /dev/sdb1

我新添加的驱动器 (dev/sdb1) 被添加为备用驱动器。之前报告某些扇区问题(在磁盘实用程序中)但在 RAID 中运行正常的分区现在被报告为有故障的备用驱动器。

我非常确定所有/大部分数据仍然存在,只是我没有办法获取它们。如果有人知道如何恢复我的数据,或者如何让我的 raid 再次运行,我会购买更多驱动器(外部)。

我想尝试修复现在有故障的备用驱动器 (/dev/sdc) 上的扇区,但 fsck 以几种不同的方式失败:

root@mediapc:/home/jason# fsck /dev/sdc
fsck from util-linux 2.19.1
fsck: fsck.linux_raid_member: not found
fsck: Error 2 while executing fsck.linux_raid_member for /dev/sdc

或者:

root@mediapc:/home/jason# fsck /dev/sdc1
fsck from util-linux 2.19.1
e2fsck 1.41.14 (22-Dec-2010)
fsck.ext4: Device or resource busy while trying to open /dev/sdc1
Filesystem mounted or opened exclusively by another program?

我尝试将两个驱动器按原样添加回阵列,但都添加失败:

root@mediapc:/home/jason# mdadm --add /dev/md127 /dev/sdb1
mdadm: Cannot open /dev/sdb1: Device or resource busy

我尝试搜索让 fsck 运行的方法,但是我不想重新启动系统,直到我确定这是下一步正确的操作。

真的需要一些专家的帮助。我想要我的数据,我想让这个 RAID 5 正常工作 - 但首先我需要数据。提前谢谢您。如果我还能提供什么帮助,请告诉我。

问候,杰森

答案1

您需要先加入umountRAID 阵列,然后才能fsck在其任何设备上运行。

我真的希望你有备份,因为看起来你即将崩溃。
尝试从单个磁盘故障中恢复会增加阵列中其他磁盘发生故障的可能性,因为修复期间它们的负载会增加。(参考:http://www.zdnet.com/blog/storage/why-raid-5-stops-working-in-2009/162

相关内容