RAID1:如何使标记为“已移除”的驱动器“失效”?

RAID1:如何使标记为“已移除”的驱动器“失效”?

我有(曾经有)一个 RAID 1 阵列(2 个磁盘镜像),其中一个磁盘 sda 发生故障。因此,我用新磁盘替换了坏磁盘,但似乎不知道如何让第二个驱动器作为阵列的一部分重新启动并运行。

该系统运行的是Ubuntu Server 9.04,配置如下:

MD0 => sda1,sdb1

MD1 => sda3,sdb3

MD2 => sda2,sdb2

 mdadm --detail /dev/md0

显示两个驱动器:

0 /dev/sdb1 "Active Sync"

1 [nothing] "Removed"

MD1 和 MD2 看起来相同。

我发现的教程说使用以下命令将每个分区标记为失败:

mdadm --manage /dev/md0 --fail /dev/sda1

但是,由于驱动器不存在,我得到:

mdadm: cannot find /dev/sda1: No such file or directory

我可以跳过失败步骤吗?或者还有其他方法可以让不再存在的分区失败吗?或者如果我将分区表从旧的驱动器复制到新的驱动器,它会自动识别出它是替换的吗?

我是新手,不想把事情搞砸。:)

答案1

您不需要让它们发生故障。因为当您第一次注意到问题时它们应该已经发生故障,并且 RAID 成员现已被移除。只需几个步骤即可使其恢复运行。

  1. 在替换磁盘上设置分区。这些分区的大小应与发生故障且当前处于活动状态的磁盘的大小相同,并且应标记为分区类型“Linux RAID Autodetect”(0xFD)。您可以使用 复制分区表来简化此操作sfdisk

    sfdisk -d /dev/sdb | sfdisk /dev/sda
    
  2. 如果该磁盘之前已经使用过,那么您可能需要确保在重新开始之前已删除所有现有的 softRAID 信息。

    mdadm --zero-superblock /dev/sda
    
  3. 在新磁盘上安装 MBR,使其可启动。从grubshell 执行此操作。假设这/dev/sda是第一个磁盘。

    root (hd0,0)
    setup (hd0)
    quit
    
  4. 将新分区添加回阵列。

    mdadm --add /dev/md0 /dev/sda1
    mdadm --add /dev/md1 /dev/sda3
    mdadm --add /dev/md2 /dev/sda2
    
  5. 通过查看来监控重建状态/proc/mdstat。您可以使用以下方式自动执行此操作。

    watch -n10 cat /proc/mdstat
    

答案2

相关内容