27th Jul2012
Author: Gyro

EXT4-fs: group descriptors corrupted! Cannot mount disk using Ubuntu

Whaaa, Datageddon! My 2TB external just decided to stop working. "dmesg | tail" gave me the worst of the worst messages: "EXT4-fs (sda1): group descriptors corrupted!", which translates to me as "kiss your data bye bye"…

After some searching I came across the magic terminal commands to solve the problem:

Check for backup superblocks, replace the x’s with your partition name
# sudo mke2fs -n /dev/xxx

Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Restore the superblock from the backup, again replacing the x’s with your partition name, and block_number with the first backup superblock
# sudo e2fsck -b block_number /dev/xxx

Now just wait 1 million years for it to fnish, and you'll have you trillions of bytes back.  :crazy:

Source: http://linuxexpresso.wordpress.com/2010/03/31/repair-a-broken-ext4-superblock-in-ubuntu/

EXT4-fs (sda1): group descriptors corrupted!
fsck.ext4: No such file or directory while trying to re-open
EXT4-fs (sdb1): group descriptors corrupted!
Error writing block 1 (Attempt to write block to filesystem resulted in short write). Possibly non-existent device?
EXT4-fs (sdc1): group descriptors corrupted!


Keep Me Going
Your Name / Website:
Did you like my post? Buy me a Bitcoffee! 14JX52Li7zTKbyQv2omw4tvu6Bi1KzfHNW

17 Responses to “EXT4-fs: group descriptors corrupted! Cannot mount disk using Ubuntu”

  • Thx a lot, you totally made my day.

    I did just that (with a lot of carefully taken steps) on a Synology NAS (busybox) and it worked. I just love how the synology webui for resizing partitions on a RAID array just fails like the failure it is. Back to the command line i should never have left ;)

  • carlos

    This helped me recover a 1 TB of data at work, yikes!

  • Tomo

    Waiting for e2fsck to finish… Cound you post your bitcoin address for donation?

    • Gyro

      Glad my post helped you get it sorted. :)

      I kept losing my wallets, so I swore to never get one again… well… I just got my first Bitcoin wallet, let’s see how long it takes until I lose this one :D

      My Bitcoin Address is 14JX52Li7zTKbyQv2omw4tvu6Bi1KzfHNW

  • jimbo

    Here goes your Double Latte :)

    For small amounts/fast payments in shops etc., I recommend Mycellium android wallet. When you install it, make paper backup immediately, so in case you lose your mobile phone – you won’t lose bitcoins (the wallet is encrypted so whoever finds your phone won’t be able to spend them).

    • Gyro

      I just realized I never said thanks… well, THANKS :)

      Since I am terible at losing just about anything that isn’t permanently attached to my body, I never bothered to buy an expensive phone. My current one is a second hand Nokia C2, it’s awesome at making and receiving phone calls! :crazy:

  • Dan

    Awesome post! Thanks!

    What’s the best way to handle the “Clone multiply-claimed blocks” prompt from e2fsck?

    My 3-device RAID 5 array failed to inactive, used -f to force reassemble, mounted with file structure intact. Next reboot, “corrupt group descriptors”. Made the classic mistake of not backing up the moment I saw it good! Ouch.

  • JD245


    Thanks for this info. I’m working on it now. Is there a way to force a “yes” answer to all the prompts? Is that even a good idea? I don’t know what most of it really means and assume that “yes” is the best choice if I’m to complete the repairs. I’ve already answered “yes” a gazillion times but I can’t stand here forever. :-)

    So, if there is a way to do it, what would happen if I aborted the current process and re-issued the command with the force yes? Would it start over, forgetting everything it has already done, or are the repairs completed on the fly meaning that it would just begin repairing where it left off so-to-speak?


    • Gyro

      To make it answer “yes”, you just add -y to the command.

      In your case, I would just stand there forever, since you already started it.


      Most fsck programs are written in such a way that any changes that make are as atomic as possible and they will clean-up (completing or rolling back any current change) before responding to a TERM or INT signal (SIGINT is what is sent to the active process when ctrl+c is pressed) so even an actively writing fsck should be safe to interrupt, but I woudl not recommend taking the risk – better safe than sorry!

  • pgn674

    Thank you for this post, it was exactly what I needed.

    To get to the point of figuring out what was going on, I’ve got a few good things: All I could tell was that my kernel was panicking during boot, and I couldn’t scroll back up to see why. So I changed the kernel boot options in GRUB and removed “rhgb quiet” (it’s CentOS), and added “rdshell”. This let me see messages as they went by and check out dmesg after the panic. I also found some use in the option “boot_delay=200”, which slows down the boot messages as they go by (be sure to not have quiet, or you see nothing).

    From the stuff I saw in dmesg I was able to find your post, and I used SystemRescueCD to run the commands.

  • Roman Švéda

    Thank you so much from Czech Republic. Your instructions rescued projection in our small cinema

  • zefram

    hi! it helped me to rescue a 32Gb sdcard formatted ext4 ( /home partition on my eeep701)!

    • Gyro

      Thanks for your comment.

      Knowing my post helped others makes me feel good, and that’s something money can’t buy! :)

  • Sadanand

    Thanks for this post..this helped me to resolve the issue.

Leave a Reply

Your email address will not be published. Required fields are marked *

What is 5 + 2 ?
Please leave these two fields as-is:
IMPORTANT! To be able to proceed, you need to solve the following simple math (so we know that you are a human) :-)