linux重新构建软raid其中一块盘一直rebuilding的解决方法

这边此前用四块SSD盘做了raid10,后面想改成raid5,然后通过以下操作,RAID5阵列已经创建成功,正在重建中,显示"spare rebuilding",但是这个重建时间有点久,所以我们通过查找资料获取了一些方式来处理这种情况,以下是我重建raid登记的操作

umount /dev/md0
mdadm -S /dev/md0
#清零超级块
mdadm --misc --zero-superblock /dev/nvme0n1
mdadm --misc --zero-superblock /dev/nvme1n1
mdadm --misc --zero-superblock /dev/nvme2n1
mdadm --misc --zero-superblock /dev/nvme3n1
#然后重新创建
mdadm --create /dev/md0 --level=5 --raid-devices=4 /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1

查询到新创建的raid状态如下

mdadm --detail /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Sun Nov 30 15:47:36 2025
        Raid Level : raid5
        Array Size : 11251817472 (10.48 TiB 11.52 TB)
     Used Dev Size : 3750605824 (3.49 TiB 3.84 TB)
      Raid Devices : 4
     Total Devices : 4
       Persistence : Superblock is persistent

     Intent Bitmap : Internal

       Update Time : Sun Nov 30 15:47:36 2025
             State : clean, degraded, recovering
    Active Devices : 3
   Working Devices : 4
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : bitmap

    Rebuild Status : 0% complete

              Name : gpunode92:0  (local to host gpunode92)
              UUID : 09c058f8:c133d934:eb3722dc:3739d4af
            Events : 1

    Number   Major   Minor   RaidDevice State
       0     259        1        0      active sync   /dev/nvme0n1
       1     259        3        1      active sync   /dev/nvme1n1
       2     259        0        2      active sync   /dev/nvme2n1
       4     259        2        3      spare rebuilding   /dev/nvme3n1

我们可以看到nvme3n1这块盘处于rebuilding状态,实际这样直接等待也能等raid重建好,但是由于我们没有数据,所以可以使用更快的方式进行重建

将创建命令改为如下方式

sudo mdadm --create /dev/md0 --level=5 --raid-devices=4 --assume-clean /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1

--assume-clean 选项告诉 mdadm 假设磁盘是干净的,因此它不会进行重建过程,由于已经清零了超级块并且确认没有数据,所以是安全的。

后面我们可以看到软raid正常创建且状态是不需要重建的状态。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/1150

评论列表

0%