用更少的磁盘重建 mdadm RAID5 阵列

drj*_*eep 7 linux raid mdadm

我有一个 4 磁盘 RAID5 阵列,其中一个根据 smartd 开始出现故障。但是,由于我在 /dev/md0 上使用的空间不到一半,我想重建阵列而没有出现故障的磁盘

我能在网上找到的最接近的场景是这篇文章,但是它包含不适用于我的位(LVM 卷),并且也没有解释我在完成后如何调整分区大小。

请注意,我有重要数据的备份,但如果可能,我想避免从头开始重建阵列。

更新:故障磁盘已被踢出阵列,我还能这样做吗?

lar*_*sks 9

根据将我带到本文的 Google 的力量,从mdadm3.1.something 版本开始,可以在 Linux 下调整 RAID5 阵列的大小。

  1. 首先缩小文件系统(使用resize2fs -M)。
  2. 用于向下mdadm ... --grow --array-size=调整阵列大小,使其大小适合三个物理卷。
  3. 使用mdadm ... --grow --raid-devices=3 --backup-file=/tmp/backup改变阵列中的设备数量。

我自己从来没有测试过,直到现在我什至没有意识到支持这个操作。所以,我学到了一些东西。祝你好运!

  • 根据 [this mdadm 手册页](https://linux.die.net/man/8/mdadm),grow 选项明确表示它也处理收缩。因此它应该按设计工作。但是一定要先缩小文件系统,然后再`mdadm`! (2认同)