복구할 수 없을 정도로 RAID 파일 시스템을 강제 마운트할 수 있나요?

복구할 수 없을 정도로 RAID 파일 시스템을 강제 마운트할 수 있나요?

3-디스크 RAID5 설정이 있었습니다. 부주의하게 마이그레이션하는 동안 디스크 하나가 어레이에서 튀어나오고 다른 디스크가 바싹 따라붙었습니다.

따라서 정렬된 디스크 쌍이 없기 때문에 어레이를 합법적으로 재구축할 수 없습니다.

나는 이미 어레이의 디스크 두 개를 예비(동일한) 디스크 한 쌍에 복제하여 원하는 만큼 여러 번 엉망으로 만들고 다시 시작할 수 있도록 했습니다.

데이터가 일치하지 않으면 손상될 가능성이 높다는 것을 알고 있지만 무언가를 배우는 수단으로 시도해 보고 싶습니다.

두 개의 디스크를 강제로 조립하면 어레이를 시작할 수 있지만 다음과 같은 이유로 마운트할 수는 없습니다.

$ sudo mdadm /dev/md1 --assemble /dev/sde2 /dev/sdd2 -f 
mdadm: /dev/md1 has been started with 2 drives (out of 3).


sudo mount -v /dev/md1 /media/mfloris/raidNas/ 
mount: /media/mfloris/raidNas: wrong fs type, bad option, bad superblock on /dev/md1, missing codepage or helper program, or other error.

시스템이 디스크가 정렬되었다고 믿도록 메타데이터를 조작할 수 있는 방법이 있습니까?

나는 이미 시도했다fsck -n /dev/md1(아무것도 하지 않습니다) 그리고dumpe2fs /dev/md1(슈퍼블록에 잘못된 매직 넘버가 표시됩니다)

나는 또한 다음을 시도했습니다.

$sudo file -skL /dev/md1 
/dev/md1: BTRFS Filesystem sectorsize 4096, nodesize 16384, leafsize 16384, UUID=f0b84f7d-7247-4781-959d-1da2eea20e66, 407236403200/5999719088128 bytes used, 1 devices\012- data

$ sudo grep btrfs /proc/filesystems
    btrfs

$ lsmod | grep btrfs
btrfs                1138688  0
zstd_compress         163840  1 btrfs
xor                    24576  2 async_xor,btrfs
raid6_pq              114688  4 async_pq,btrfs,raid456,async_raid6_recov

sudo mount -t btrfs -v /dev/md1 /media/mfloris/raidNas/
mount: /media/mfloris/raidNas: wrong fs type, bad option, bad superblock on /dev/md1, missing codepage or helper program, or other error.

$sudo btrfs check /dev/md1
parent transid verify failed on 654950400 wanted 8458 found 8456
parent transid verify failed on 654950400 wanted 8458 found 8456
parent transid verify failed on 654950400 wanted 8458 found 8460
parent transid verify failed on 654950400 wanted 8458 found 8460
Ignoring transid failure
leaf parent key incorrect 654950400
ERROR: cannot open file system

그리고 위험한

$ sudo btrfsck --init-extent-tree /dev/md1 
Checking filesystem on /dev/md1
UUID: f0b84f7d-7247-4781-959d-1da2eea20e66
Creating a new extent tree
ERROR: tree block bytenr 169114808628 is not aligned to sectorsize 4096
Error reading tree block
error pinning down used bytes
ERROR: attempt to start transaction over already running one
extent buffer leak: start 653361152 len 16384

슈퍼블록을 고치려면 어떻게 해야 합니까?

기기의 상태입니다. 이벤트 카운터가 닫혀 있고 업데이트 시간은 약 8시간 간격이지만 해당 기간 동안 데이터는 거의 변경되지 않았습니다.

$sudo mdadm -E /dev/sd*2
/dev/sdd2:
          Magic : a92b4efc
        Version : 1.0
    Feature Map : 0x1
     Array UUID : b57aca26:65609077:9fe7889a:6241c63a
           Name : NAS:1
  Creation Time : Fri Aug  3 08:13:23 2018
     Raid Level : raid5
   Raid Devices : 3

 Avail Dev Size : 5859101344 (2793.84 GiB 2999.86 GB)
     Array Size : 5859100672 (5587.67 GiB 5999.72 GB)
  Used Dev Size : 5859100672 (2793.84 GiB 2999.86 GB)
   Super Offset : 5859101600 sectors
   Unused Space : before=0 sectors, after=912 sectors
          State : clean
    Device UUID : bb700941:772cb7b0:db32a940:e902d0bd

Internal Bitmap : -16 sectors from superblock
    Update Time : Tue Aug 28 07:47:49 2018
       Checksum : 153fd25e - correct
         Events : 78660

         Layout : left-symmetric
     Chunk Size : 512K

   Device Role : Active device 1
   Array State : .A. ('A' == active, '.' == missing, 'R' == replacing)
/dev/sde2:
          Magic : a92b4efc
        Version : 1.0
    Feature Map : 0x1
     Array UUID : b57aca26:65609077:9fe7889a:6241c63a
           Name : NAS:1
  Creation Time : Fri Aug  3 08:13:23 2018
     Raid Level : raid5
   Raid Devices : 3

 Avail Dev Size : 5859101344 (2793.84 GiB 2999.86 GB)
     Array Size : 5859100672 (5587.67 GiB 5999.72 GB)
  Used Dev Size : 5859100672 (2793.84 GiB 2999.86 GB)
   Super Offset : 5859101600 sectors
   Unused Space : before=0 sectors, after=912 sectors
          State : clean
    Device UUID : c844b66b:fe21447d:e74c865a:751baa07

Internal Bitmap : -16 sectors from superblock
    Update Time : Tue Aug 28 00:04:18 2018
       Checksum : 703361e6 - correct
         Events : 78660

         Layout : left-symmetric
     Chunk Size : 512K

   Device Role : Active device 0
   Array State : AAA ('A' == active, '.' == missing, 'R' == replacing)

관련 정보