使用现有驱动器在14.04上设置RAID 1

我目前已经安装了Seagate ST3000DM001(大约90%已满)和新的Seagate ST3000DM001(空白)。 我想设置RAID 1而不会丢失当前安装的驱动器上的数据。

如果我使用本教程中概述的mdadm进程: http : //www.mysolutions.it/tutorial-mdadm-software-raid-ubuntu-debian-systems/ ,我的数据是否会被保留?

这是可能的,但是知道镜子完成需要一些时间,因为我们谈论的是3 TB。 我会做的是:

  1. 首先使用gdisk准备磁盘,因为fdisk不能执行大于2TB的分区。 我们假设创建的分区是sdb1

  2. 运行sudo mdadm --create --verbose /dev/md0 --force --level=1 --raid-devices=1 /dev/sdb1 。 这里的重要部分是告诉mdadm你现在正在使用--raid-devices=1一个磁盘用于RAID级别1。

  3. 格式化新创建的RAID分区并将所有内容从原始磁盘复制到此分区。

  4. 现在通过发出以下命令准备要包含在RAID中的其他驱动器(假设原始驱动器是sda1

     sudo mdadm --grow /dev/md0 --raid-devices=2 --add /dev/sda1 

    这将增加RAIDarrays(md0),将其上的设备数量设置为2(sdb1,sda1)并将原始sda1添加到其中。

您可以使用sudo mdadm --detail /dev/md0检查它的进程,它应该在最后显示这样的内容:

 Number Major Minor RaidDevice State 0 8 49 0 active sync /dev/sdb1 1 8 65 1 spare rebuilding /dev/sda1 

完成后:

 Number Major Minor RaidDevice State 0 8 49 0 active sync /dev/sdb1 1 8 65 1 active sync /dev/sda1 

我建议在此之后重新启动,以使Nautilus正确查看RAID。 您可以validation这是否正常工作,但在安装了设备并且仍然能够执行或查看其中的video时,确实删除了其中一个驱动器。 当然--detail的输出将是这样的:

 Number Major Minor RaidDevice State 0 0 0 0 removed 1 8 65 1 active sync /dev/sda1 

在这种情况下,我断开了驱动器sdb ,仍然可以处理信息。

更新 :自util-linux 2.24起,fdisk不支持分区2+ TB并支持GPT方案。 这种支持已经登陆Ubuntu 14.10。 除此之外,界面变得更加友好,它支持更好的人类可读尺寸。 整体变化可在以下位置找到:

util-linux 2.24 – 发行说明
util-linux 2.25 – 发行说明

当您创建raidarrays时(甚至教程的第1步说磁盘已经预先准备好了。)所有数据都将丢失。 您需要首先创建数据备份,创建arrays,然后将所有数据复制回新arrays。