How to recover, depends on the state of the device you want to recover things from..
Most people that come to me to recover stuff from a hd.. We ask what type of recovery they want...
Corrupt device, corrupt tape, corrupt tapedrive etc..
Corrupt hd -> Is it a software (filesystem issues)
-> recover4all does the undelete actions quite well on MS type fs-esses
-> Partition recovery (any fs)
-> UFS explorer (linux fs and much more)
Corrupt tape:
-> try tar, else rent really expensive professionals
Corrupt HD hardware (board)
-> Be sure to never junk old HD's.. swapping a HD PCB can fix tons of problems !
Corrupt HD mechanics:
-> Try a Linuxrescue/Knoppix CD.. and use dd_rescue... Goes a long way
If the HD mechanics problem does not work... Try:
-> Beers, fridge, rubberhammer, ziplock-bag:
Cool down the HD quite a bit in a fridge, in a zip-locked bag (keeping it dry). Reconnect, keep it cool. Hit it with a rubber hammer fron the side...
use dd_rescue.. Then if you can copy it to a working device then use the fs/software tools..
Over the last 10 years, on about 50 disks like that, I got a 70% ratio. On tons of different disks.. Novell Netware, EXT3, XFS etc formated disks..
Be sure.. If a customers asks about pricing.. It ain't cheap !! Sometimes it took me 10 hours for a single disk.. (from a no-RAID Netware server, without backups, that was easily over 2000 euro !!) only 4 files out of 50.000 were corrupt... But had to do the whole thing.. (hd replacement board, in frigde , hit it with rubber hammer, dd_rescue etc)