ext4 を修復しようとするとデータが失われる「グループ記述子が破損しています!」

ext4 を修復しようとするとデータが失われる「グループ記述子が破損しています!」

既存のディスクをマウントしようとすると、次のメッセージが表示されます。

sudo mount -t ext4  /dev/sdc1 /data
mount: wrong fs type, bad option, bad superblock on /dev/sdc1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

を見るとdmesg

[  707.504050] EXT4-fs (sdc1): group descriptors corrupted!

次にコマンドを実行します

sudo e2fsck -p /dev/sdc1


cloudimg-rootfs: Superblock has an invalid journal (inode 8).
CLEARED.
*** ext3 journal has been deleted - filesystem is now ext2 only ***

cloudimg-rootfs: One or more block group descriptor checksums are invalid.  FIXED.
cloudimg-rootfs: Group descriptor 0 checksum is invalid.  

cloudimg-rootfs: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
    (i.e., without -a or -p options)

sudo fsck.ext4 -v /dev/sdc1

One or more block group descriptor checksums are invalid.  Fix<y>? yes

Group descriptor 0 checksum is invalid.  FIXED.
Group descriptor 1 checksum is invalid.  FIXED.
Group descriptor 2 checksum is invalid.  FIXED.
Group descriptor 3 checksum is invalid.  FIXED.
Group descriptor 4 checksum is invalid.  FIXED.
Group descriptor 5 checksum is invalid.  FIXED.
Group descriptor 6 checksum is invalid.  FIXED.
Group descriptor 7 checksum is invalid.  FIXED.
Group descriptor 8 checksum is invalid.  FIXED.
Group descriptor 9 checksum is invalid.  FIXED.
Group descriptor 10 checksum is invalid.  FIXED.
Group descriptor 11 checksum is invalid.  FIXED.
Group descriptor 12 checksum is invalid.  FIXED.
Group descriptor 13 checksum is invalid.  FIXED.
Group descriptor 14 checksum is invalid.  FIXED.
Group descriptor 15 checksum is invalid.  FIXED.
Group descriptor 16 checksum is invalid.  FIXED.
Group descriptor 17 checksum is invalid.  FIXED.
..SKIPPED..

    cloudimg-rootfs contains a file system with errors, check forced.
Resize inode not valid.  Recreate<y>? yes

Pass 1: Checking inodes, blocks, and sizes
Journal inode is not in use, but contains data.  Clear<y>? yes

Pass 2: Checking directory structure
Entry 'backup' in / (2) has invalid inode #: 3932162.
Clear<y>? yes

Entry 'conf' in / (2) has invalid inode #: 3932163.
Clear<y>? yes

Entry 'data' in / (2) has invalid inode #: 3932164.
Clear<y>? yes

Entry 'init' in / (2) has invalid inode #: 3932165.
Clear<y>? yes

Entry 'lib' in / (2) has invalid inode #: 3932166.
Clear<y>? yes

Entry 'log' in / (2) has invalid inode #: 3932167.
Clear<y>? yes

Entry 'script' in / (2) has invalid inode #: 3932168.
Clear<y>? yes

Entry 'site' in / (2) has invalid inode #: 3932169.
Clear<y>? yes

Entry 'tmp' in / (2) has invalid inode #: 3932170.
Clear<y>? yes

Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Inode 2 ref count is 12, should be 3.  Fix<y>? yes

Pass 5: Checking group summary information
Block bitmap differences:  -(89--601) -(603--1024) -9254 -(32857--33792) -(34816--98303) -(98393--99328) -(100352--163839) -(163929--164864) -(165888--229375) -(229465--230400) -(231424--294911) -(295001--295936) -(296960--524287) -(557056--819199) -(819289--820224) -(821248--884735) -(884825--885760) -(886784--1048575) -(1081344--1572863) -(1605721--1606656) -(1607680--1641853) -(1641984--1658367) -(1658880--1702655) -(1702912--1726975) -(1727488--1738239) -(1738752--1991679) -(1992704--2055679) -(2056192--2061567) -(2062336--2082303) -(2082816--2097151) -(2129920--2452991) -(2453504--2480383) -(2482176--2517503) -(2519040--2580735) -(2580992--2581503) -(2582528--2621439) -(2654297--2655232) -(2656256--2713343) -(2713600--2723327) -(2723840--2735103) -(2736128--2743295) -(2744320--2745855) -(2746368--2760447) -(2760704--2765567) -(2766848--2804991) -(2805760--2837503) -(2838528--2842367) -(2842624--2893055) -(2893312--2909439) -(2910208--3013631) -(3014656--3145727) -(3178496--3417343) -(3417600--3437055) -(3438592--3442175) -(3442688--3454463) -(3454976--3670015) -(3702784--3775743) -(3776000--3897599) -(3899392--3902207) -(3902464--3922687) -(3923968--3937279) -(3938304--3993855) -(3995648--4011775) -(4012032--4043519) -(4043776--4044287) -(4044800--4065023) -(4065280--4068863) -(4069376--4074495) -(4075520--4089599) -(4089856--4095999) -(4096089--4099840) -(4100096--4119295) -(4120576--4124415) -(4124672--4179199) -(4179968--4185599) -(4186112--4192511) -(4193280--4194303) -(4227072--4229375) -(4230144--4273407) -(4274176--4301567) -(4301824--4318207) -(4319232--4380927) -(4381184--4381695) -(4382720--4426495) -(4426752--4460031) -(4460544--4563455) -(4563968--4625919) -(4626432--4718591) -(4751360--4840191) -(4841472--4862463) -(4862976--4878079) -(4878336--5086463) -(5086720--5110783) -(5111808--5158399) -(5158912--5204991) -(5206016--5218047) -(5218304--5231615) -(5232640--5242879) -(5275648--5383167) -(5384192--5451519) -(5451776--5457407) -(5457920--5471231) -(5472256--5474815) -(5476352--5484031) -(5484544--5512235) -(5513216--5583359) -(5583872--5670143) -(5670400--5685759) -(5686272--5703423) -(5703680--5750015) -(5750784--5767167) -(5799936--5892863) -(5893120--5906175) -(5906432--5946367) -(5947392--5964031) -(5965824--6018815) -(6019072--6034687) -(6035456--6093311) -(6094848--6097919) -(6098944--6291455) -(6324224--6378239) -(6379520--6409215) -(6410240--6429695) -(6430720--6558207) -(6559744--6702079) -(6703104--6740991) -(6742016--6815743) -(6848512--6929919) -(6930432--7140095) -(7141376--7144959) -(7145472--7149055) -(7149568--7156991) -(7157760--7161599) -(7161856--7171071) -(7172096--7185919) -(7186432--7195647) -(7196672--7224063) -(7225344--7340031) -(7340043--7340047) -(7340059--7340063) -(7345696--7348255) -(7372800--7463423) -(7464960--7491071) -(7491584--7502847) -(7503872--7523839) -(7524352--75315

Fix<y>? yes

Free blocks count wrong for group #0 (23512, counted=24449).
Fix<y>? yes

Free blocks count wrong for group #1 (1023, counted=32679).
Fix<y>? yes

Free blocks count wrong for group #2 (0, counted=32768).
Fix<y>? yes
..SKIPPED..

ついに..

cloudimg-rootfs: ***** FILE SYSTEM WAS MODIFIED *****

      11 inodes used (0.00%)
       0 non-contiguous files (0.0%)
       0 non-contiguous directories (0.0%)
         # of inodes with ind/dind/tind blocks: 0/0/0
         Extent depth histogram: 2
  121775 blocks used (1.59%)
       0 bad blocks
       0 large files

       0 regular files
       2 directories
       0 character device files
       0 block device files
       0 fifos
       0 links
       0 symbolic links (0 fast symbolic links)
       0 sockets
--------
       2 files

質問: 再度マウントしようとすると、今回は成功しますが、lost+foundフォルダーのみの空のパーティションのみが表示され、100 GB のパーティションが 29 GB になります。

何か案が?

答え1

ファイルシステムがひどく破損し、e2fsck救出できる手段がほとんどありません。ファイルシステムを消去し、バックアップから復元してください。"ハードウェアの交換を検討するただし、上記で投稿した内容から、これが仮想サーバーであることが示唆されます。

上記のコメントに対する回答ですが、あなたがしたことは、FS が起動した場合に私たち全員ができることとほぼ同じです (ただし、 を使用できる可能性のある FS カーネル ハッカーは除きますdebugfs)。バックアップがない場合は、自分を責めないでください。する自分を責め、重要な教訓を学びましょう。

関連情報