如何将软件 RAID 1 分区转换为非 RAID 分区?

如何将软件 RAID 1 分区转换为非 RAID 分区?

他们说 RAID 不是备份,但直到现在我才明白我真正需要的是(外部)备份。

因此,我想在我的 Linux 系统(Debian 7)中将(软件)RAID-1 分区转换为非 RAID 分区(ext4),但我不知道如何操作。

我的目标是移除当前 RAID 1 设置的两个内部驱动器之一,并将其​​用作外部备份驱动器,这样我就可以将数据保存在另一个物理位置。

有没有办法进行非 RAID 转换,而无需在(未来)单个内部驱动器中格式化当前 RAID 分区(/home)?

谢谢你的建议,Marcio

答案1

我要这样做才能安全地删除由 mdadm 管理的 RAID-1:

  1. 运行fdisk -l。这将告诉您有多少个数组以及哪些数组。在接下来的步骤中,我假设您只有/dev/md0

  2. 运行mdadm --detail /dev/md0。这将为您提供有关正在使用的物理磁盘的信息。

  3. 运行umount -l /dev/md0,这将允许您稍后停止 RAID。该-l标志将按照其手册页执行以下操作:

    -l 延迟卸载。立即将文件系统从文件系统层次结构中分离出来,并在文件系统不再繁忙时立即清除对文件系统的所有引用。(需要内核 2.4.11 或更高版本。)

  4. 运行mdadm --stop /dev/md0。这将停止您的 RAID 阵列。

  5. 擦除 RAID 中每个设备上的超级块(应在步骤 2 中运行的命令中详细说明)。

    mdadm --zero-superblock /dev/sda
    mdadm --zero-superblock /dev/sdb
    ...
    

就应该这样。

答案2

mdadm --zero-superblock可能还不够,分区信息可能也需要更新。

mdadm对我来说,将一个带有一个使用 XFS 格式化的RAID1 GPT 分区的 8TB 驱动器成功转换/dev/sda1为“常规”驱动器/分区的有效方法是:

  1. cat /proc/mdstat显示所有 RAID 设备及其组件,例如
...
md0 : active raid1 sdb1[2] sda1[1]
      7813893952 blocks super 1.2 [2/2] [UU]
...
  1. /dev/sda1首先将RAID 设备转换/dev/md0为常规驱动器umount /dev/md0
  2. 然后mdadm --stop /dev/md0停止RAID。
  3. mdadm --zero-superblock /dev/sda1转换为“常规”驱动器/分区。
  4. 将文件系统类型更改为fdisk20Linux 文件系统)。
  5. 用 修复分区表testdisk /dev/sda

这也适用于 Ext4 文件系统。

相关内容