How to Recover Lost Partitions, How to Make Non-booting Disk Bootable, and How to Recover Lost Data

TestDisk a free open source utility that can be utilized to:
Fix partition table, recover deleted partition
Recover FAT32 boot sector from its backup
Rebuild FAT12/FAT16/FAT32 boot sector
Fix FAT tables
Rebuild NTFS boot sector
Recover NTFS boot sector from its backup
Fix MFT using MFT mirror
Locate ext2/ext3 Backup SuperBlock
Undelete files from FAT, NTFS and ext2 filesystem
Copy files from deleted FAT, NTFS and ext2/ext3 partitions.

TestDisk can be used with the following OSes:
DOS (either real or in a Windows 9x DOS-box),
Windows (NT4, 2000, XP, 2003, Vista),
Linux,
FreeBSD, NetBSD, OpenBSD,
SunOS and
MacOS

TestDisk can find lost partitions for all of these file systems:
BeFS ( BeOS )
BSD disklabel ( FreeBSD/OpenBSD/NetBSD )
CramFS, Compressed File System
DOS/Windows FAT12, FAT16 and FAT32
Windows exFAT
HFS, HFS+ and HFSX, Hierarchical File System
JFS, IBM's Journaled File System
Linux ext2 and ext3
Linux LUKS encrypted partition
Linux RAID md 0.9/1.0/1.1/1.2
RAID 1: mirroring
RAID 4: striped array with parity device
RAID 5: striped array with distributed parity information
RAID 6: striped array with distributed dual redundancy information
Linux Swap (versions 1 and 2)
LVM and LVM2, Linux Logical Volume Manager
Mac partition map
Novell Storage Services NSS
NTFS ( Windows NT/2000/XP/2003/Vista/2008 )
ReiserFS 3.5, 3.6 and 4
Sun Solaris i386 disklabel
Unix File System UFS and UFS2 (Sun/BSD/...)
XFS, SGI's Journaled File System

TestDisk is downloadable from: http://www.cgsecurity.org/wiki/TestDisk_Download