After a repartition and (win95) reformat I find I didn't save away all the data I wanted from an ext2 fs, so I've spent a morning grovelling through the source and figuring out the structure. (I think I can get the data back, only the first block group got overwritten by format)
Now I find that libext2fs exists.. is there any documentation on how to use it, and how much does it depend on the filesystem being intact? Can it be told to use a backup superblock? I discovered that mount(8) can be given an option to do so, but the utilities (e2fsck, debugfs etc) don't seem to, so is it some limitation of libext2fs?