mdadm RAID5 어레이에서 로그 슈퍼블록을 복구하는 방법

mdadm RAID5 어레이에서 로그 슈퍼블록을 복구하는 방법

어제 3개의 디스크 raid5 어레이가 갑자기 마운트 해제되었습니다. 검사 결과 한 디스크의 이벤트 수가 다른 디스크보다 훨씬 적은 등 성능이 저하된 것으로 보입니다.

실행을 시작했습니다. sudo mdadm --assemble --force /dev/md0 /dev/sd[bcd]1- 그러나 실수를 했습니다. 명령을 실행할 때 디스크 /dev/sdb이름이 지정되었으므로 명령은 /dev/sde및 에 대해서만 실행되었습니다. 이 명령은 가장 낮은 이벤트 카운트 디스크를 둘 중 가장 높은 카운트로 재설정합니다(600개 이벤트의 차이인 것 같습니다). 이는 과거 IIRC에서와 마찬가지로 큰 차이에 대한 이벤트 카운트가 재설정되지 않는다는 사실에 놀랐습니다./dev/sdc1/dev/sdd1--force

sudo mdadm /dev/md0 --add /dev/sdb1마지막으로 이전에 여러 번 했던 것처럼 남은 디스크(이벤트 수가 가장 적은 디스크가 아닌)를 동기화하는 작업을 마쳤습니다 . 몇 시간 후에 오류 없이 동기화가 예상대로 완료되었습니다. 하지만 그 이후로는 어레이를 마운트할 수 없습니다.

시스템의 세부 사항은 다음과 같습니다.

운영 체제:

lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 19.10
Release:    19.10
Codename:   eoan

RAID 어레이

sudo mdadm --detail /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Thu Apr  4 23:46:03 2019
        Raid Level : raid5
        Array Size : 1953257472 (1862.77 GiB 2000.14 GB)
     Used Dev Size : 976628736 (931.39 GiB 1000.07 GB)
      Raid Devices : 3
     Total Devices : 3
       Persistence : Superblock is persistent

     Intent Bitmap : Internal

       Update Time : Thu Feb  6 13:16:05 2020
             State : clean 
    Active Devices : 3
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 0

            Layout : left-symmetric
        Chunk Size : 64K

Consistency Policy : bitmap

              Name : pc:0  (local to host pc)
              UUID : 96c2bb9a:8318792c:843e1e85:820cd123
            Events : 21280

    Number   Major   Minor   RaidDevice State
       5       8       17        0      active sync   /dev/sdb1
       4       8       33        1      active sync   /dev/sdc1
       3       8       49        2      active sync   /dev/sdd1
cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10] 
md0 : active raid5 sdc1[4] sdd1[3] sdb1[5]
      1953257472 blocks super 1.2 level 5, 64k chunk, algorithm 2 [3/3] [UUU]
      bitmap: 0/8 pages [0KB], 65536KB chunk

관련 부품  lsblk -f:

sdb                                                                                                      
└─sdb1                  linux_raid_member pc:0 96c2bb9a-8318-792c-843e-1e85820cd123                  
  └─md0                 ext4              RaidData 88936c12-1664-4d4d-9d33-8aabd1efe0ab                  
sdc                                                                                                      
└─sdc1                  linux_raid_member pc:0 96c2bb9a-8318-792c-843e-1e85820cd123                  
  └─md0                 ext4              RaidData 88936c12-1664-4d4d-9d33-8aabd1efe0ab                  
sdd                                                                                                      
└─sdd1                  linux_raid_member pc:0 96c2bb9a-8318-792c-843e-1e85820cd123                  
  └─md0                 ext4              RaidData 88936c12-1664-4d4d-9d33-8aabd1efe0ab   

관련 출력LSDRV도구:

PCI [ahci] 00:1f.2 SATA controller: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
├scsi 1:0:0:0 ATA      WDC WD10EZEX-08W
│└sdb 931.51g [8:16] Empty/Unknown
│ └sdb1 931.51g [8:17] Empty/Unknown
│  └md0 1.82t [9:0] MD v1.2 raid5 (3) clean, 64k Chunk {None}
│                   Empty/Unknown
├scsi 2:0:0:0 ATA      WDC WD10EZRZ-22H
│└sdc 931.51g [8:32] Empty/Unknown
│ └sdc1 931.51g [8:33] Empty/Unknown
│  └md0 1.82t [9:0] MD v1.2 raid5 (3) clean, 64k Chunk {None}
│                   Empty/Unknown
└scsi 3:0:0:0 ATA      WDC WD10EZEX-00K
 └sdd 931.51g [8:48] Empty/Unknown
  └sdd1 931.51g [8:49] Empty/Unknown
   └md0 1.82t [9:0] MD v1.2 raid5 (3) clean, 64k Chunk {None}
                    Empty/Unknown

RAID 구성원 상태:

sudo mdadm --examine /dev/sd[bcd]
/dev/sdb:
   MBR Magic : aa55
Partition[0] :   1953521664 sectors at         2048 (type 83)
/dev/sdc:
   MBR Magic : aa55
Partition[0] :   1953521664 sectors at         2048 (type 83)
/dev/sdd:
   MBR Magic : aa55
Partition[0] :   1953521664 sectors at         2048 (type 83)

설치하는 동안 오류가 발생했습니다. 오류의 의미를 잘 모르겠습니다.

sudo mount /dev/md0
mount: /media/dpm/Dades: mount(2) system call failed: Structure needs cleaning.

슈퍼블록이 손상된 것 같나요? :

sudo e2fsck -v /dev/md0
e2fsck 1.45.3 (14-Jul-2019)
Journal superblock is corrupt.
Fix<y>? cancelled!
e2fsck: The journal superblock is corrupt while checking journal for RaidData
e2fsck: Cannot proceed with file system check

RaidData: ********** WARNING: Filesystem still has errors **********

fsck무엇을 해야 할지, 지금 당장 실행해도 안전한지 잘 모르겠습니다 . 어떤 조언이라도 대단히 감사하겠습니다. 감사합니다!

관련 정보