bug-ddrescue
[Top][All Lists]
Advanced

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

Re: [Bug-ddrescue] Utility to mark unused space as done


From: Antonio Diaz Diaz
Subject: Re: [Bug-ddrescue] Utility to mark unused space as done
Date: Mon, 20 Feb 2012 20:40:06 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.7.11) Gecko/20050905

Hello Robert,

Robert Backhaus wrote:
I really need a set of utilities (for different filessytems) that can
use a partial dump and log file, and create a log file with the unused
sections of the drive marked read. It seems such a required function
that it is hard to believe that no one has created them, but I have
not been able to find them.

Tampering with logfiles (for example, marking as read what has not been really read) is almost always a bad idea. I think a much better way of doing what you want is to create one or more "domain logfiles" to delimit what areas to recover and in what order, and use the same real logfile during all the process.


An additional feture would be to be able to mark particular files
(pagefile.sys and hyberfile.sys come to mind) as read.

Just don't create domain logfiles for them, or create a domain logfile for them, invert it with ddrescuelog, and then use it as a logic AND mask for other domain logfiles (see ddrescuelog).


If my dreams came true, displaying filenames that are known and their
blocks, so that I can know where the important files are and recover
them first.

This is indeed very useful, but it is a task for the filesystem tools, which know the filesystem internals, not for ddrescue.


If this was done, a change to the logfile structure would be also
useful: an additional type of block, say with the marking character a
number from 0 to 9, indicating priority (logically it would be like ?,
ie untried). This would go along with a new option, where you could
specify the minimum priority that ddrescue would attempt to read.

If you can set priorities, you can generate a series of domain logfiles and apply them sequentially.


workflow would go like this:
1. run ddrescue using -s to get the first few megabytes.
2. Run the utility to analyze the partial log file, which would mark
unused blocks as +, and mark known files like this

0xposition  0xsize  ?  # /hyberfile.sys
0xposition 0xsize  ?  # /Users/

What about fragmented files? Or several files in the same block (I think some filesystems pack small files like this)?


3. Edit the log file, changing the ? to + for files I do not need to
recover, and changing the ? to, say '9' for things I need. For
instance

0xposition  0xsize  +  # /hyberfile.sys
0xposition 0xsize  9  # /Users/

A logfile with one or more lines per file may have many thousands of lines. Good luck editing such a file. :-)


Anyway, that's my dream, but has anyone produced the simple(r) 'mark
unused' utilities? At least for ntfs and/or vfat?

IIRC, several people have written scripts, but I do not remember what they do exactly. Also, I think some of the scripts needed some software from Microsoft to work.

It may also be difficult for such tools to work at all in the cases where the bad blocks have affected the filesystem structure.


Regards,
Antonio.



reply via email to

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