我可以将raid10arrays转换为raid0吗?

我用mdadm创build了一个raid10数组。 元数据版本是1.2。 我想将其转换为raid0数组,这可能吗?

PS我有TB的数据,我想避免复制数据。

是。

从mdadm 3.2.1版本开始,运行一个“适当的最近的内核”(无论这意味着什么,我猜至less3.0),从RAID10到RAID0的重塑是可能的。 这意味着一个相当新的Linux发行版; 您正在运行的系统可能需要升级,或者您可能需要使用较新的工具暂时引导至活动CDtypes的环境,以进行转换。

为了做出改变,将会是这样的:

mdadm /dev/md0 --grow --level=0 resize2fs /dev/md0 

请记住已经提到的警告。 在RAID0上运行任何东西都是非常危险的。 你会最终看到失败。

没有。

你可以做的是从RAID-10arrays中取出镜像,把这些新的备份放到一个新的RAID-0arrays中,移动所有的数据,然后把剩余的驱动器添加到新的RAID-0arrays中。

如果mdadm支持增长RAID-0arrays。 它没有。

切换到LVM

那么,这就是我想要回答一个复杂的理论场景,而没有一个VM方便的testing。 这只是不会发生…但下面的评论是很好的解释,也许值得保存。

是的你可以。 这是丑陋的,不容易,而且很容易真的搞砸了,但是…

在Superuser.com上看到这个问题的答案 。 您应该排除arrays中的两个驱动器,但确保它们是正确的两个驱动器 。 以只读模式执行此操作,以便在软件中出错的情况下,您可以将其恢复并重试。

一旦你失败了这些驱动器,将它们标记为一个新的RAID 0.你不能增长一个RAID 0,所以当你初始化它时,你需要一次初始化所有四个驱动器(你可以做两个,然后两个,但它必须有四个开始)。 您需要确保您添加的前两个驱动器按正确顺序排列,而不是镜像对。

同样, 首先以只读模式执行所有操作,以testing它是否正常运行,并且首先按正确的顺序安装正确的驱动器。