On Tue, May 23, 2006 at 05:57:57PM +0300, Ariel Biener wrote:
> On Tuesday 23 May 2006 17:14, Yedidyah Bar-David wrote:
> > 
> > Just to make it clear - even without really getting deep into your
> > problem, you should know that 'dd conv=noerror' is pointless in your
> > situation, because it does not write zeros (or anything) instead of the
> > unreadable sectors - its writes nothing. So all the data after the first
> > bad sector will be shifted compared to where it should have been, which
> > will practically appear as a damaged filesystem, probably very damaged.
> 
> Also, I'd use 512 bytes blocks for such cases. While it is slower, it will be
> less prone to errors than 1M blocks, and is the only way I do it when
> creating images between disks of different sizes, especially when there
> are errors on the source.

That's part of what dd_rescue does - it uses large blocks, and if it
sees errors it tries again with smaller ones etc.
ddrhelp uses dd_rescue, and also leaves the bad (and hard) parts for the
end. So that you will hopefully get 99% or so copied in a reasonable
time, then can leave ddrhelp to try the rest for as long as you wish,
trying each sector for tens of times if you have the time. And if you
don't, you simply kill it whenever you want (after the first phase),
knowing you probably got the maximum you could in the time you invested.

I am not sure I agree about using small blocks for copying between
undamaged different-sized disks. What's the point? I of course would
always consider such a copy potentially-problematic, especially if they
have different geometry or are to be put in BIOSes with a different
translation, but that won't be solved by small blocks.
-- 
Didi


=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to