我可以将一个RAID1分区分成两部分吗?

我有一个CentOS 6.2和一个RAID1(2x 2Tb)configuration的Linux机器:

/dev/md1 -> / (10G) /dev/md2 -> /home (1.9T) 

我想分割两个不同的分区,所以我可以得到以下configuration:

 /dev/md1 -> / (10G) /dev/md2 -> /home (1T) /dev/md3 -> /example (900G) 

我怎样才能做到这一点? 我已经知道我可以调整分区大小,但是这不会改变真正的分区表(只有md设备),所以我该怎么做?

如果您不使用LVM ,则需要:

  • 删除MD设备(使用mdadm ),
  • 删除分区(使用fdisk ),
  • 重新创build所需的分区(使用fdisk ),
  • 然后重新创buildMD设备(使用mdadm )。

您最好使用逻辑卷。

然后,您可以创build,扩展,并尽可能多地做你想做的事情。

这里有一个很好的指导

http://www.gagme.com/greg/linux/raid-lvm.php

正确的(初始)方法是在RAIDarrays顶部叠加LVM,然后根据需要重新分配卷。 但是你不在这可能是可行的。

你可能还有一个出路。 Ext3 / Ext2是可以resize的,虽然当你签约文件系统时会有点风险。 除非您没有其他select,否则我不build议您这么做,否则您会冒险收集您的数据:

  1. 在不同的机器上安装arrays。 这是必要的,因为你的boot / root在arrays上,这使得进程变得复杂。 你可以用一个只读的挂载等,但让我们保持简单。
  2. 您将Ext2 / 3文件系统缩小到新的大小。 这创造了“空间”。 请注意,缩小的大小限制在磁盘上存储的数据量…如果你有3Gbyte的数据,你不能缩小到2.5Gbyte,并期望它的工作。
  3. 然后缩小硬盘分区以匹配。 这是棘手的部分。 收缩太多,最后会出现令人讨厌的重叠,从而导致数据丢失。 如果分区略大于文件系统大小,则不会受到影响; 您总是可以将现有的分区扩展到额外的空间。
  4. 将分区表写出到MD设备。

现在你有两条path,一条是LVM,另一条是没有的。

用旧式的分区:

  1. 创build一个或多个新的磁盘分区(根据需要)
  2. 将每个分区格式化为文件系统。
  3. 将现有的文件系统数据移动到新创build的分区中
  4. 编辑/ etc / fstab在引导时挂载新的分区

使用LVM:

  1. 将所有现有的“新”空间标记为LVM分区。 将分区更改写入磁盘。
  2. 从分区创build一个新的卷组。
  3. 从卷组中分配逻辑卷
  4. 将每个逻辑卷格式化为文件系统。
  5. 将现有文件系统移动到新创build的逻辑卷中
  6. 编辑你的/ etc / fstab来在启动的时候安装新的LVM卷