从 mdadm RAID 0 阵列中删除 1 个磁盘

Tim*_*Tim 3 gentoo mdadm

服务器有一个 7 磁盘RAID 0阵列,并且sdf开始死亡。

有没有办法sdf在保持阵列完整的同时删除?

# df -h
Filesystem  Size  Used Avail Use% Mounted on
/dev/md1     14T  6.6T  7.0T  49% /var
[...]

# cat /proc/mdstat
Personalities : [raid0]
md1 : active raid0 sda4[0] sdf1[5] sdd1[3] sdb1[1] sde1[4] sdg1[6] sdc1[2]
      14482788352 blocks 512k chunks
Run Code Online (Sandbox Code Playgroud)

希望将停机时间保持在最低限度。


澄清:

我知道没有冗余,并且我已经备份了重要数据。

但是是否有可能将“条纹”sdf移到其他驱动器上?只是为了让它进入稳定状态而不必擦拭所有东西。到目前为止,我可以强行修复的只是几个坏道。

如果可能的话,之后我会计划对 3 个健康的驱动器做同样的事情,并镜像它们。最终我需要将其转换为RAID1.

我不相信可以在此 Hetzner 服务器上添加另一个硬盘。此外,他们无法镜像有缺陷的驱动器并更换它:

“请注意,我们只能将您损坏的硬盘更换为空硬盘。我们不进行任何数据交换或备份。”
——赫兹纳

ric*_*2hs 5

RAID 0 没有冗余,因此磁盘越多,阵列实际上变得越脆弱,因为其中任何一个发生故障都会导致整个阵列无法恢复。

如果您想继续使用 RAID 0(大概是出于性能原因),并尽量减少停机时间,请使用救援操作系统(例如SystemRescueCD)启动系统,并使用“dd”或“ddrescue”制作 /dev/ 的最佳副本sdf1,你可以。用新的/dev/sdf1 替换旧的/dev/sdf1,继续担心下一次驱动器故障。

  • [用澄清更新了 OP] 但是是否可以在不添加驱动器的情况下执行此操作?阵列中有足够的可用空间,我想会有一些方法来分配负载,不是吗? (2认同)