[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-ddrescue] Bug-ddrescue Digest, Vol 102, Issue 4
From: |
Scott Dwyer |
Subject: |
Re: [Bug-ddrescue] Bug-ddrescue Digest, Vol 102, Issue 4 |
Date: |
Mon, 07 Jul 2014 14:54:59 -0400 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 |
On 7/7/2014 12:24 PM, William wrote:
It's painfully slow. I already tried that way. It is impractical to
use "--skip-size=0" in damaged hard drives.
Correct. The only way to get the most good data first is to do multiple
passes with skipping. There is no way to go fast in one pass without
missing lots of good data. Increasing the skip size can actually very
much improve getting the most good data first. The benefit of the
reverse pass in this case is that it will get the good data that was
skipped while going forward (because it comes from the other direction
it will pick up on the tail end of the skipped areas). Simply running
the second pass in the same direction will be much less likely to pick
up all of the possible good data.
I will try to give an example of why the reverse pass is helpful,
especially with a good skip size. Below is a (very) simple pattern of
reads, each number represents a drive head. Head 2 is the bad one. The
"S" below represents skipped data. So in the first pass forward we end
up skipping part way into head 3, which is good readable data. If the
second pass is also forward, we can still miss some of that same data
from head 3 and have to wait for the slow no-skip pass to get it. But if
the second pass is in reverse, we get the data from head 3 and skip into
head 1, and we already got the data from head 1 on the first pass. The
only downside is that the reverse reads are slower. But that is a small
price to pay for getting the best data first. The trick is to find the
most effective skip size. If is it too low it is slow. If it is too high
you can skip too far into the good area where the slower reverse read
speed becomes more noticeable. And skip more than half way to the next
occurrence of the bad head and you could even miss data on the reverse pass.
First pass forward
111111111111111222222222222222333333333333333444444444444444
SSS SSSS SS S SSS SSSS
Second pass forward
111111111111111222222222222222333333333333333444444444444444
SSS SSS SS S SS SSS
Second pass reverse
111111111111111222222222222222333333333333333444444444444444
SSS SSS SS S SS SSS
Hope this helps explain it. But you are still free to use my
--no-reverse-pass options as you see fit.
Scott