如何从软件RAID 5磁盘分区恢复数据


1

我的计算机上有CentOS 5.8,带有5个1TB硬盘。

我用过软件RAID。(RAID 1作为启动分区md0,RAID 0作为根分区md1,RAID 5作为/ home分区md3)。

不幸的是,其中一个硬盘驱动器最近失败了,我想用一个新驱动器替换它。

我想知道是否有可能在没有数据丢失的情况下更改此硬盘驱动器?

重要的分区是RAID 5,所以理论上如果其中一个硬盘出现故障,我应该能够毫无问题地恢复其数据。但在实践中我该怎么做?


1
如果您在RAID0中丢失了磁盘,那么您已经丢失了RAID0阵列
Cry Havok

对我来说唯一重要的分区是/ home,它在磁盘1-5上进行突袭5。
Ali

其实我有一个raid 0分区的备份。
Ali

除非您同时丢失了两个驱动器,否则您永远不会失去对RAID5卷上数据的访问权限。
Zoredache

Answers:


2

此位置的人员实际上将物理磁盘的序列号映射为单独的名称,以帮助识别RAID阵列中的那些。他们使用UDEV规则。这消除了猜测,因为序列号通常写在磁盘纸标签上。

在下面的链接中,您将在RAID6设置(+)和恢复中发现真正的2驱动器故障。看一看。您可能能够以类似的方式识别您需要拔出哪个驱动器。

问候,

RAID 6 + XFS + MDADM

RAID 6 UDEV命名


0

应该是这样的

mdadm --add /dev/md3 /dev/<disk>

...其中<disk>的形式为sda1sdb1sdc1,等。


这个命令也可以恢复我的数据吗?
Ali

0

假设您的磁盘设置如下: 从注释构造的磁盘布局

使用:
sda1和sdb1为md1(镜像)根
sda2和sdb2为md0(条带)启动
sda3,sdb3,sdc1,sdd1和sde1为md2(RAID5)/ home

由于您丢失了驱动器2(sdb),您:

  • 你失去了md0。条带需要**所有*的驱动器。您需要从备份中恢复它或重新安装它。
  • 你从md1丢失了一个驱动器。由于这是一面镜子,它仍然有效。(没有冗余atm)
  • 你从md2驾驶失败了。由于这是一个RAID5将与一个驱动器丢失。您仍然可以访问所有数据。

我的第一步是检查我的备份。修复RAID阵列时不会出错。但最好是安全并备份。由于/和/ home在降级模式下仍然可读,我建议从此开始。

然后拉出损坏的驱动器(磁盘2,也称为sdb),将其替换为新驱动器并对驱动器进行分区。我从你的评论中了解到它使用了与第一个驱动器相同的设置。这意味着您可以从笔记中正确配置它,或者在sda上“间谍”。

接下来修复三个损坏的RAID阵列。

md0丢失了。您需要重新创建它并从备份恢复。

md1可能会使用 mdadm --assemble /dev/md1 /dev/sda1 /dev/sdb1

md2可能会合作 mdadm --assemble /dev/md2 /dev/sda3 /dev/sdb3 /dev/sdc1 /dev/sdd1 /dev/sde1

可能。我是一个使用硬件RAID卡的BSD人(不是Linux用户)。在提交这些命令之前,请仔细检查所有内容。这包括您检查备份。


问题是我使用每个驱动器的某些部分用于特定驱动器,我的意思是例如我添加100G的sda和sdb作为根分区,200M的sda和sdb用于根分区和sda和sdb的剩余空间以及整个sdc sdd和sde作为/ home分区!
Ali

失败的磁盘是sdb,所以我应该首先创建sdb2分区?我怎样才能做到这一点?
Ali

sda1和sdb1作为根分区(md1)sda2和sdb2作为启动分区(md2)
Ali

我从可用数据进行备份,现在问题是我不知道如何以软件raid可用的方式对这个新磁盘进行分区。我怎样才能做到这一点?这些新分区应该采用什么格式?
Ali

我做到了但我得到了“没有找到md0的设备”
阿里
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.