bug-ddrescue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-ddrescue] Re: output the list of bablocks suitable for e2fsck -L


From: Valerio Messina
Subject: [Bug-ddrescue] Re: output the list of bablocks suitable for e2fsck -L
Date: Fri, 07 Jan 2011 21:34:34 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.16) Gecko/20101123 SeaMonkey/2.0.11

Antonio Diaz Diaz wrote:
first of all, thanks for GNU ddrescue, it recover almost all my 160 GB
2.5" disk. Only 84 zones, 150 sectors, 75 KB remain unreadable, still
retrying with -r9 -d, will see ...
You are welcome, and good luck with the retries. :-)

as now I paused the process, remain 80 zones, 145 sectors, 72.5 KBytes.
e2fsck reported only unimportant damaged files, so I think to stop here.
Was impressive to see damaged Torrent files to be reconstructed perfectly, simply starting Transmission.

This seems indeed an useful feature. I am thinking about adding a
companion program to ddrescue (ddrescuelog ?) for non-rescue tasks,
mostly logfile-related, like this. What do you think?

waiting the end of HDD rescue I already wrote it.
It is in alpha stage, as now the input data need to be in the source, and the memory allocation for output blocks is static. I attach here the temporary source in GPL v3. I'm just working to refinish it. The algorithm is quite simple:
// for each "-" line of ddrescue log file:
//    posBlocks=rint(pos/blockSize)
//    end=pos+size-1
//    endBlocks=rint(end/blockSize)
//    output all bad blocks in range: endBlocks-posBlocks inclusive
//    the list must be unique sorted to remove duplicates

The bigger problem of this alpha source is that, the number of badblocks cannot be know in advance, so an array is not good to store the output. Worked in my case, where the badblocks are little more than bad zones, but in some worse case with big damaged zone, it output lot of badblocks, and will go out of array boundary. If you are interested in, I will continue the development, maybe reading direcly the ddrescue log file as it is, parsing "-" lines, and so on.

Valerio

Attachment: ddrescueLog2badblocks.tgz
Description: application/compressed-tar


reply via email to

[Prev in Thread] Current Thread [Next in Thread]