在 Linux 上将 Raid 1 添加到 Raid 0

在 Linux 上将 Raid 1 添加到 Raid 0

我已经配置了带有 2 个磁盘的 raid 1 的系统:

/dev/md1             918347072 249416692 621528596  29% /var
/dev/md0               9920532    160640   9247828   2% /tmp

# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sdc5[0] sdb5[1]
      948035712 blocks [2/2] [UU]

md0 : active raid1 sdc2[0] sdb2[1]
      10241344 blocks [2/2] [UU]

我已要求将其更改为 Raid 0+1(条带是镜像的,http://en.wikipedia.org/wiki/Nested_RAID_levels#RAID_0.2B1

如何在不格式化的情况下添加 2 个磁盘后将此分区更改为 Raid 01?

答案1

Linux 软件 MD RAID10 特性与标准 RAID 1+0 或 0+1 或 10 不完全相同。此外,据我所知,根本无法从 RAID1 重塑为 RAID10。

如果您打算使用 RAID10 特性,那么请忽略所有 0+1 与 1+0 的内容,因为您在使用 MD 时实际上没有选择,所以您的更大问题是关于近|远|偏移问题,它决定了块如何在卷中的各个磁盘之间分布。

正如 dafydd 在其评论中提到的,如果您在 RAID 设备上安装了 LVM,那么您将能够使用两个新磁盘设置额外的 RAID1 卷,将其添加为 PV,然后使用 LVM 进行剥离。但从您的 df 输出来看,您似乎没有安装 LVM。

这似乎非常危险,但可以创建一个具有 4 个磁盘的新 RAID10,但其中两个磁盘设置为标记为丢失(基本上是 RAID0)。将数据复制到新的 RAID10,然后将现有的 RAID1 磁盘添加到 RAID10。但在从 RAID1 添加两个新磁盘后,您的数据将有效地位于 RAID0 上,直到重建完成。我相信你必须有一个near样式布局才能使其工作。

请参阅此答案以了解具体过程。 https://serverfault.com/a/101135/984

相关内容