我遇到一个问题,我宁愿使用在线阵列来处理 - 我正在使用 RAID0 进行临时视频存储 - 恢复成本很低但使用频繁的数据。
软件阵列如下所示:
md1 : active raid0 sdb1[2] sdc1[3] sdd1[0] sde1[1]
1953487616 blocks 64k chunks
我在这个系统中有另一个分区(sda1),我想用它来替换sdc1(驱动器的年龄各不相同,sdc1绝对是最慢的,将整个阵列的连续读取性能限制为仅300MB / s)。
当阵列仍在线时,有没有办法将数据从 sdc1 迁移到 sda1?
答案1
您无法在线执行此操作,因为 RAID-0 完全无法处理故障,而 md 系统依靠故障来触发对备用组件的重建。没有办法说“您可以使用这设备代替那设备”,而不说“那设备出现故障”——这当然会让你的 RAID-0 阵列陷入混乱。
因此,我建议对 RAID-0 阵列使用 LVM 和条带化,而不是 md。它有一套更好的工具来管理此类组件设备。不过,对于任何其他 RAID 级别,我仍然会使用 md。
答案2
通常,使用 RAID 0 进行任何类似操作都需要从头开始重建阵列。
答案3
不,您不能在阵列在线时更换 raid0 磁盘。但您可以在停止 raid 后执行此操作(我只是暂时注释掉了我的/etc/mdadm.conf并重新启动)。当 raid 处于脱机状态时,您可以使用“dd”命令行实用程序将整个磁盘从故障磁盘复制到新磁盘。克隆后取消注释/etc/mdadm.conf然后回来关闭,断开故障磁盘(!)并重新启动。
答案4
它可能可以将 RAID 0 升级到 RAID 5,然后删除 sdc1,从而使 RAID 5 性能下降。