[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-ddrescue] user-interface suggestions
From: |
Richard Neill |
Subject: |
Re: [Bug-ddrescue] user-interface suggestions |
Date: |
Mon, 11 May 2009 21:30:13 +0100 |
User-agent: |
Thunderbird 2.0.0.21 (X11/20090330) |
Dear Antonio,
Thanks for your reply.
Richard Neill wrote:
1. Make it more obvious that a logfile is strongly recommended. Change
the man page synopsis to remove the [] from logfile. Thus
Given that I use regularly ddrescue as a replacement for dd, I don't
like the idea of forcing logfile usage (or having to type an option to
override the logfile).
I can add a warning to the man page saying something like "you should
use a logfile unless you know what you are doing".
OK - I agree about not forcing a logfile. I'd also suggest removing the
[] brackets in the synopsis, i.e. replace "[logfile]" by "logfile", to
indicate that most of the time, logfiles are needed. That was the visual
cue that I myself was confused by.
3. The -d option could perhaps be automatic?
No. Using -d correctly in every case is an art. It can't be (easily)
automated.
The manual says:
Use direct disc access to read the input file, bypassing the kernel
cache. Hardware block size must be correctly set for this to work.
Not all systems support this.
May I suggest a few more sentences of documentation would help? In the
common case (a modern Linux or BSD system), is it fair to say that -d
will work? If ddrescue is invoked with -d, but direct access isn't
possible, will it fail gracefully, or will bad things happen? How can I
find out whether the hardware block size is correctly set?
I think there are two separate issues here:
* When should -d as opposed to -n be used?
I think this is what you refer to as an art.
* Is it appropriate to use -d at all? Are the block sizes correct? Does
my system support this?
That's what I suggest should be automated.
4. Given that ddrescue will usually not terminate, it would be useful
if ddrescue could print the time since it last recovered any data.
Something such as "ddrescue has now been working for 8 hours without
recovering any more data; you've probably got all you're going to get".
Sounds well. I'll see what can be done.
Thanks.
5. Lastly, for compatibility with regular dd, may I recommend graceful
handling (or at least ignoring) of "kill -USR1" ?
I can easily handle it like SIGINT.
For regular dd,
killall -USR1 dd
will make it print out statistics of where it has got to.
That's probably unnecessary here, but I think that USR1 should be
trapped and *ignored* rather than treated the same as SIGINT.
Best wishes,
Richard