如何创建> 2TB磁盘的RAIDarrays?

我想知道在现有服务器上设置软件RAIDarrays的正确方法。 我有两个全新的3TB磁盘用于arrays。

具体来说,我想设置一个3TB RAID 1arrays,格式化为ext4,不使用LVM。 但是一个更一般的答案可能会帮助其他人从头到尾完成指示。

我尝试了很多指南:

  • 如何实现RAID 1? – 仅涵盖部分流程
  • 在RAID 1中设置两个额外的SSD驱动器 – 最终使用2TB而不是3TB的arrays
  • 在Raid 1中添加两个新HDD – 仅使用1TB驱动器

我还发现了这些资源:

  • http://richard.blog.kraya.co.uk/tag/mdadm/ – 适用于CentOS,不包括更新mdadm.conf和其他步骤
  • http://www.technotes.se/?p=1732 – 全面但复杂,并非专门为Ubuntu编写

驱动器的初始分区似乎是关键; 上面的最后一个链接详细提到了这一点,但前面的链接似乎达到了相同的结果并且更简单。

此答案假定您使用两个相同的新驱动器创建新的RAID 1arrays。 文件系统将在单个分区上的ext4占用整个驱动器,而不是使用LVM。

首先,通过运行sudo fdisk -l识别新硬盘的设备名称。 就我而言,新驱动器是/dev/sdc/dev/sdd

然后在每个驱动器上创建分区。 分区表需要是GPT以允许使用超过2TB,因此您不能使用fdisk

  1. 运行parted /dev/sdc

  2. (parted)提示符下,键入mklabel gpt创建分区表。

  3. 键入print free检查驱动器上的可用空间。 就我而言,这显示了3001GB。

  4. 通过键入mkpart primary 1M 3001GB来创建分区。 这将启动分区1M偏移量,从而产生4096字节对齐。 这可能是必要的,也可能不是必要的,但如果没有,则不会受到伤害。

  5. 通过键入p检查您的分区是否已设置。 然后输入q退出。

/dev/sdd重复步骤1到5。

现在使用mdadm命令创建数组:

 sudo mdadm --verbose --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sd[cd]1 

创建文件系统:

 sudo mkfs.ext4 /dev/md0 

最后,将数组安装到某处并将其添加到/etc/fstab如果您希望永久安装它。 我这样做了:

  1. 通过运行sudo mkdir /mnt/md0创建一个安装arrays的位置。

  2. 编辑/etc/fstab并添加以下行:

     /dev/md0 /mnt/md0 auto defaults 0 0 
  3. 通过运行sudo mount /mnt/md0

现在您可以开始使用您的arrays了。 但请记住,在完全操作之前,它需要完成初始同步。 您可以通过运行sudo mdadm --detail /dev/md0来跟踪其进度。