我有一台 RHEL 6.5 机器,我最近在其中为 raid 1 添加了两个分区。它毫无意外地接管了磁盘,但我无法调整 raid 本身的大小。cat /proc/mdstat 的输出为:
md0 : active raid1 sdc1[2] sde1[4] sdd1[3] sda1[0] sdb1[1]
102388 blocks super 1.0 [5/5] [UUUUU]
执行 mdmadm --detail /dev/md0 可得到:
/dev/md0:版本:1.0 创建时间:2011 年 9 月 7 日,星期三 11:53:07 突袭级别:raid1 阵列大小:102388(100.01 MiB 104.85 MB)已用设备大小:102388(100.01 MiB 104.85 MB)突袭设备:5 设备总数:5 持久性:超级块是持久的
Update Time : Tue Feb 4 09:08:51 2014 State : clean Active Devices : 5 Working Devices : 5 Failed Devices : 0 Spare Devices : 0 Name : ... UUID : 8be07299:879eb666:ac4b1cde:3c2d9b97 Events : 424 Number Major Minor RaidDevice State 0 8 1 0 active sync /dev/sda1 1 8 17 1 active sync /dev/sdb1 2 8 33 2 active sync /dev/sdc1 4 8 65 3 active sync /dev/sde1 3 8 49 4 active sync /dev/sdd1
因此,在我看来,所有 4 个磁盘都是镜像。当我尝试调整阵列大小时,我得到:
# mdadm --grow /dev/md0 --size=max
mdadm:/dev/md0 的组件大小保持不变,为 102388K
我怎样才能使这个数组增长?
答案1
您无法向 RAID1 添加分区并扩大其容量。实际发生的情况正如您所描述的那样;它将它们添加为镜像。
来扩大阵列,当不使用 LVM(逻辑卷管理)时,您需要扩大底层分区,然后扩大阵列。最常见的方法是从阵列中删除一个设备(使用 将其设置为故障mdadm
,然后删除),重新分区,将其添加回来,等待重新同步,然后对另一个设备执行此操作。然后,您可以使用 mdadm 来扩大它。不过,棘手的部分是,有了新的 mdadm 超级块,您不能再重新扩大阵列了。请参阅这我的问题。
如果您有 LVM,并且原始 RAID 分区是卷组的物理设备,则可以使用新驱动器/分区创建一个新的 RAID1 阵列,将其变成 LVM 的物理设备,然后pvcreate
将其添加到卷组。然后,您可以使用它lvresize
来调整实际卷的大小。互联网上有很多操作指南可以告诉您具体如何操作。