How to recover an integer ext3 partition from a disk with a damaged partition table ?

Todd Denniston Todd.Denniston at ssa.crane.navy.mil
Wed Sep 24 20:08:13 UTC 2008


Andrea Mastellone wrote, On 09/24/2008 01:10 PM:
> Todd Denniston wrote:
>> Andrea Mastellone wrote, On 09/24/2008 11:12 AM:
>>> Hi,
>>>
>> if I had less space (and no time to buy an extra USB hard drive) and 
>> could translate the CHS to bytes/blocks of disk space, I would do 
>> something like:
>> assume 512 blocks, and HeadSector size of 7697074bytes
>> bc of 7697074*6402/512 yields 96243491 which is probably completely 
>> wrong.
>> (is this roughly a 55GB device?)
>>
> 
> Yes, it is about 55 GiB device. Can i proceed so  with this ?
> 

No warranties, you get to keep the broken chunks.

I was just playing about with the math based on the info that fdisk puts out 
in the 'p' information, which for my disk was:
Units = cylinders of 16065 * 512 = 8225280 bytes
and I was guessing was:
Units = cylinders of 15033 * 512 = 7697074 bytes
based on you indicating the partition in question was 10GB and THAT partition 
having 7798-6403=1395 cylinders
10*1024*1024*1024/1395=7697074
So these are VERY round about numbers... If you are not going to capture the 
whole disk, then I would capture significantly more than the calculations show 
and then trim that down to work with.

If I _/HAD/_ to capture less than 55GB of the device, with only the 
insufficient data I have now, I would do a something more like setting seek to 
the order of 7697074*6000/512=90200085 and then start looking for filesystem 
headers in the data.

My preference though would be capture the whole device, because it gives you a 
lot more chances to come up with the correct data.  One example of more 
chances, would be to 'fix' the partition table in a copy of the image, i.e, 
you know the partition ran from 6403 to 7798 and something like Partitioned 
loopback devices[1] MIGHT be able to help.

Granted we are already WAY outside my comfort zone in giving advise about 
recovering data from a device that I don't own.   If it is really important, 
there are folks who will do the whole job for a fee.

Again no warranties, you get to keep the broken chunks.

>> dd if=/dev/whole_solid_state_disk \
>>    of=/path/to/spare11GB/SSD.image \
>>    seek=96243491 conv=noerror bs=512
>>
> 
> Andrea
> 
>>
>> And remember, the device is already failing... you MIGHT only get one 
>> more read, so take that into consideration when choosing the method 
>> for getting the image.
>>
> 

[1] http://lwn.net/Articles/110468/
http://lwn.net/Articles/251908/
http://lwn.net/Articles/274113/

-- 
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane)
Harnessing the Power of Technology for the Warfighter




More information about the fedora-list mailing list