So, after a Linux crash that caused my previous ddrescue to fail(after 350GB), I started to look into how to speed it up, because 30+ hours did not sound like a good idea to me.
I look into ways to speed it up and using a larger block size did the trick. I experimented with a few different sizes and figured out that using 2M gave me the best throughput. So instead of a couple of megs a second i was getting over 24 MB/s. So about a 4 1/2 hour recovery after that.
ddrescue -b 2M /dev/sda2 /media/newdisk/olddata /media/newdisk/logfile
The ddrescue process will attempt to recover any lost sectors and retrim the lost data. Luckily, I only lost about 3100k of data so the most of my data is safe.
You can attempt to rerun ddrescue with the -r <# of times to retry> and it will continue to attempt to read those failed sectors that were unrecoverable. There is no guarantee that you will get back all the data.
Once this data is recovered, you can (hopefully) mount this file as a disk under linux.
mount /media/newdisk/olddata /mnt/newdisk
Now remember to back up your data and you will not go through the pain that I did to recover this data.
Part 1 of article
Tags: dd, ddrescue, Linux