我的电脑上有 CentOS 5.8,有 5 个 1TB 硬盘。
我使用了软件 RAID。(RAID 1 作为启动分区 md0,RAID 0 作为根分区 md1,RAID 5 作为 /home 分区 md3)。
不幸的是,其中一个硬盘最近出现故障,我想更换一个新的。
我想知道是否有可能在不丢失数据的情况下更换这个硬盘?
重要分区是 RAID 5,因此理论上如果其中一个硬盘出现故障,我应该能够毫无问题地恢复其数据。但实际上我该怎么做呢?
答案1
该位置的工作人员实际上将物理磁盘的序列号映射到单独的名称,以帮助识别 RAID 阵列中的磁盘。他们为此使用了 UDEV 规则。这消除了猜测,因为序列号通常写在磁盘纸质标签上。
在以下链接中,您将找到 RAID6 设置 (+) 和恢复中真正的 2 个驱动器故障。看一看。您可能能够以类似的方式识别需要拔出哪个驱动器。
问候,
答案2
它应该是这样的
mdadm --add /dev/md3 /dev/<disk>
…其中,形式<disk>
为sda1
,,,等。sdb1
sdc1
答案3
假设您的磁盘设置如下:
使用:
sda1 和 sdb1 作为 md1(镜像)根
sda2 和 sdb2 作为 md0(条带化)启动
sda3、sdb3、sdc1、sdd1 和 sde1 作为 md2(RAID5)/home
由于您丢失了驱动器 2 (sdb),因此您:
- 您丢失了 md0。条带需要其**所有*驱动器。您需要从备份中恢复它或重新安装它。
- 您丢失了 md1 中的一个驱动器。由于它是一个镜像,因此它仍可工作。(目前没有冗余)
- 您丢失了 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 用户)。在执行这些命令之前,请仔细检查所有内容。这包括检查您的备份。