mdadm RAID 어레이의 경우 숫자 열의 숫자를 0부터 시작하여 연속적으로 변경합니다.

mdadm RAID 어레이의 경우 숫자 열의 숫자를 0부터 시작하여 연속적으로 변경합니다.

RAID 1 어레이가 있습니다.

# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Thu Oct 18 21:52:43 2012
     Raid Level : raid1
     Array Size : 1048564 (1024.16 MiB 1073.73 MB)
  Used Dev Size : 1048564 (1024.16 MiB 1073.73 MB)
   Raid Devices : 2
  Total Devices : 3
    Persistence : Superblock is persistent

    Update Time : Fri Oct 19 16:25:32 2012
          State : clean
 Active Devices : 2
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 1

           Name : cow:0  (local to host cow)
           UUID : 9e691db1:f8fcc7d8:f56d9c11:1c202693
         Events : 98

    Number   Major   Minor   RaidDevice State
       2       8        2        0      active sync   /dev/sda2
       3       8       18        1      active sync   /dev/sdb2

       4       8       34        -      spare   /dev/sdc2

열의 숫자를 Number2, 3, 4 대신 0, 1, 2로 변경할 수 있나요? 어레이를 일부 수정하고 장치를 제거하고 추가하기 전까지는 0, 1, 2였습니다.

답변1

이 숫자는영구장치 식별자는 다음 위치에 저장됩니다.슈퍼 블록RAID 어레이 장치 수("This-Component-Device" 섹션의 "dev_number" 필드) 변경할 수 없습니다.

그러나 다시 만들 수는 있습니다.깨끗한동일한 장치의 배열을 사용하면 새 장치 식별자가 포함된 새 슈퍼블록이 생성됩니다.


이 작업은 RAID 어레이에 저장된 데이터에는 영향을 주지 않으며 RAID 메타데이터(수퍼블록)에만 영향을 미칩니다.


1. 데이터를 백업하세요 -죄송합니다보다 더 안전-그렇게 하는 것은 자신의 책임입니다

# Retrieve [/dev/md0] metadata version
METADATAVER=`cat /sys/block/md0/md/metadata_version`

2. RAID 어레이 중지

mdadm --stop /dev/md0

. RAID 어레이를 다시 생성하고,깨끗하다고 ​​가정,메타데이터 버전이 동일해야 합니다.

mdadm --create /dev/md0 --assume-clean --metadata=$METADATAVER --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2

    mdadm: /dev/sda2 appears to be part of a raid array:
          level=raid1 devices=2 ctime=Sun Mar 11 11:11:11 2021
    mdadm: /dev/sdb2 appears to be part of a raid array:
          level=raid1 devices=2 ctime=Sun Mar 11 11:11:11 2021
    Continue creating array? y
    mdadm: array /dev/md0 started.

4. RAID 어레이에 예비 장치를 다시 추가합니다.

mdadm --add /dev/md0 /dev/sdc2

5. OCD 무료 장치 번호를 즐기세요

mdadm --detail /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Mon Mar 13 13:13:13 2023
        Raid Level : raid1
        Array Size : 1048564 (1024.16 MiB 1073.73 MB)
     Used Dev Size : 1048564 (1024.16 MiB 1073.73 MB)
      Raid Devices : 2
     Total Devices : 3
       Persistence : Superblock is persistent

       Update Time : Mon Mar 13 13:13:13 2023
             State : clean 
    Active Devices : 2
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 1

Consistency Policy : resync

              Name : cow:0  (local to host cow)
              UUID : 9e691db1:f8fcc7d8:f56d9c11:1c202693
            Events : 3

    Number   Major   Minor   RaidDevice State
       0       7        1        0      active sync   /dev/sda2
       1       7        2        1      active sync   /dev/sdb2

       2       7        3        -      spare   /dev/sdc2

이 답변은 "슈퍼블록 버전 간 변환” Neil Brown이 작성했으며 원래 linux-raid 메일링 리스트에 게시되었습니다.


관련 정보