손상된 슈퍼블록을 사용하여 LVM에서 ext4 파일 시스템 복구

손상된 슈퍼블록을 사용하여 LVM에서 ext4 파일 시스템 복구

정전 후 LV에 있는 EXT4 fs의 슈퍼 블록이 손상되어 설치할 수 없습니다. LV는 모두 동일한 물리적 디스크 및 VG 내에 위치합니다. 디스크에는 손상이 없고 파일 시스템만 손상된 것 같습니다.

며칠 전에 덜 중요한 다른 fs(또한 EXT4)에도 동일한 일이 발생하는 또 다른 중단이 발생했습니다. 나는 다른 많은 LV를 가지고 있으며 대부분은 EXT4이며 강제로 닫기 전에 모든 LV가 여전히 마운트되어 있습니다. 하지만 이 두 개만 손상되었습니다.

지금까지 두 개의 손상된 파일 시스템과 두 개의 중단 사이에서 본 유일한 패턴은 다음과 같습니다.

  • 둘 다거의종료되기 전에 LV(및 파일 시스템) 크기가 온라인으로 조정된 유일한 노드입니다. 이에 따라 Lvresize 및 resize2fs가 완료되었습니다.
  • 둘 다 ext4이고 마지막 중단 전에 즉시 크기가 조정된 세 번째 파일 시스템이 있습니다. 이 파일 시스템은 손상되지 않았지만 유일한 btrfs 파일 시스템입니다.

내 합리적인 추측은 강제 종료, 제거가 아닌, 실시간 크기 조정 업데이트에 대한 정보를 제공하지 않는 것과 관련이 있을 수 있다는 것입니다. 두 파일 시스템 모두 크기 조정 전후에 정상적으로 실행되었으며, 여기서 인터럽트는 기폭 장치였습니다.

내가 수행한 몇 가지 테스트는 다음과 같습니다.

sudo 마운트 /dev/vg00/dshark /mnt

mount: /mnt: cannot mount; probably corrupted filesystem on /dev/mapper/vg00-dshark.
       dmesg(1) may have more information after failed mount system call.

마운트를 시도한 후 dmesg는 다음을 반환합니다.

[18041.892096] EXT4-fs (dm-22): VFS: Found ext4 filesystem with invalid superblock checksum. Run e2fsck?

sudo e2fsck /dev/vg00/dshark

e2fsck 1.46.5 (30-Dec-2021)
e2fsck: Bad magic number in super-block while trying to open /dev/vg00/dshark

The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem.  If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>
 or
    e2fsck -b 32768 <device>

/dev/vg00/dshark contains a ext4 file system

또한 슈퍼블록이 어디에 저장되어야 하는지 확인해 보았습니다.

sudo mke2fs -n /dev/vg00/dshark

mke2fs 1.46.5 (30-Dec-2021)
/dev/vg00/dshark_snap contains a ext4 file system
Proceed anyway? (y,N) y
Creating filesystem with 14155776 4k blocks and 3538944 inodes
Filesystem UUID: 0c642ec1-e5e1-41ab-95ff-8f9054058fa6
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424

e2fsck -b를 시도해 보세요.슈퍼 블록} 이 값 중 하나를 사용하면 위와 동일한 결과가 나타납니다. 음, 한 가지 경우를 제외하면:

sudo e2fsck -b 884736 /dev/vg00/dshark_snap

e2fsck 1.46.5 (30-Dec-2021)
e2fsck: Attempt to read block from filesystem resulted in short read while trying to open /dev/vg00/dshark_snap
Could this be a zero-length partition?

파일 시스템 복구에 대한 도움 또는최악의 상황구조해 주셔서 정말 감사합니다! 이에 대한 이유를 알아내는 것도 추가 부패를 예방하는 데 매우 도움이 될 수 있습니다. 더 많은 정보가 필요하면 질문을 업데이트하겠습니다. 감사해요!

관련 정보