使用现有驱动器在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。 我会做的是:
-
首先使用
gdisk
准备磁盘,因为fdisk
不能执行大于2TB的分区。 我们假设创建的分区是sdb1
-
运行
sudo mdadm --create --verbose /dev/md0 --force --level=1 --raid-devices=1 /dev/sdb1
。 这里的重要部分是告诉mdadm你现在正在使用--raid-devices=1
一个磁盘用于RAID级别1。 -
格式化新创建的RAID分区并将所有内容从原始磁盘复制到此分区。
-
现在通过发出以下命令准备要包含在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。