increasing dd disk to disk transfer rate
Martin Cracauer
cracauer at cons.org
Thu Jan 12 13:20:31 PST 2006
Moin moin, wie geht's :-)
Christoph Kukulies wrote on Thu, Jan 12, 2006 at 10:48:38AM +0100:
>
> My notebooks' hard disk, a Hitachi Travelstar 80 GB starts to develop read
> errors. I have FreeBSD and Win XP on that disk. Although FreeBSD ist still
> working , the errors in the Windows partition are causing Windows do ask for a
> filesystem check nearly everytime I reboot the computer. One time the
> error was in the hibernate.sys file, which impedes powering up quickly after
> a hibernate.
>
> Anyway, I decided to buy a second identical hard disk and tried to
> block by block copy the old disk to the new one using
>
> dd if=/dev/ad2 of=/dev/ad3 conv=noerror
>
> The process is running now since yesterday evening and it is at 53 MB
> at a transfer rate of about 1.1 MB/s.
/usr/ports/mis/cstream is a dd-like tool which allows you to specify
that it buffers up <n> megabyte of input before writing to the
output. You need that because you are on the same bus with both
disks.
Use the -B and -b options with some high values. Experiment with the
-c option.
> Is there a way to tweak the driver (be it the FreeBSD promise driver
> or the normal ata driver) to use more retries on errors so that I
> have the chance to copy everything or nearly everything of the already
> degrading hard disk?
Just retrying the same block probably doesn't do it. You'll be more
successful by seeking to move the head around before retrying.
Martin
--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin Cracauer <cracauer at cons.org> http://www.cons.org/cracauer/
FreeBSD - where you want to go, today. http://www.freebsd.org/
More information about the freebsd-hackers
mailing list