Florian Sedivy wrote:
First of all I want to express my deepest appreciation for ddrescue. Although
it follows a very simple concept (make a 1-to-1 copy), it is nevertheless
continually refined year after year. Thank you very much!
You are welcome. :-)
The concept may seem simple, but there is no limit to how clever (or
idiotic) the algorithm may become.
I have two suggestions. First is a very simple change of the exit status after user interruption. Currently this is 0, which makes it indistinguishable from a finished run. In the context of a script and/ or loop it is very useful to catch a user interruption in order to exit the loop or script.
Ddrescue returns 0 when interrupted because I considered it an
"user-finished run", not an error. But if a nonzero value is useful, I
have no objection to it. Only that -1 does not seem an appropiate value,
as the return value is usually an unsigned 8-bit number.
The other suggestion is about retry mode. I wish ddrescue could automatically
alternate the reading direction for each pass when retrying 2 or more times.
Good idea. But no need of using negative numbers for it. I think a
suffix letter is less confusing and allows for infinite alternation
(-r-1i for example). From the 3 obvious candidates (a, i, r), I prefer
'i' (from invert) because 'a' is an hexadecimal digit and 'r' can be
understood as reverse mode.
Also I would have liked to insert a 5 second pause between passes, but don't know how to accomplish that in a platform independent way and without messing up the read statistics.
Implementing a pause between passes is possible. For example it can be
specified as a time interval after the number of retries and optional
"inverting" letter. "-r20i,5s" could then make 20 alternating passes (10
forward, 10 backward) with a 5 second pause between passes.
_______________________________________________
Bug-ddrescue mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-ddrescue