Repairing corrupted FAT32 drive
By using fsck as described below I managed to restore one of my hard drives.
$ fsck.msdos -r -v -V /dev/hda2
According to the man file, the options have the following effects:
| -r | Interactively repair the file system. The user is asked for advice whenever there is more than one approach to fix an inconsistency. |
| -v | Verbose mode. Generates slightly more output. |
| -V | Perform a verification pass. The file system check is repeated after the first run. The second pass should never report any fixable errors. It may take considerably longer than the first pass, because the first pass may have generated long list of modifications that have to be scanned for each disk read. |
Reference: Fedora Mailing List.