I'm using ddrescue to get data from damaged DVDs.

If DVDs are badly damaged, the CDROM drive really struggles to read at all, and can spend 10 seconds continuously readjusting the beam arm or whatever it's doing.

So to avoid pointless strain on the drive, I thought: 1. Set a high block size value. 2. If any errors are detected, don't try to reading again; just skip ahead until readable data is found.

However, the options in ddrescue have got me confused. What's the difference between --max-errors and --retry-passes, and what are the contributions of --no-scrape and --no-trim?


  1. What are the correct options to rush efficiently through a DVD once as quickly as possible?
  2. Since ddrescue can be run multiple times filling in the blanks on an existing file image, what would be the options for a second, more thorough run?

You should just follow the recommendation for CDROM in the manual:

 ddrescue -n -b2048 /dev/cdrom cdimage logfile
 ddrescue -d -b2048 /dev/cdrom cdimage logfile

And be prepared that it can take several days for a DVD to be read. I have myself only done 4Gb drives, but read a report (now a broken link) of someone taking 10 days for a 7.8Gb DVD.

max-errors influences how many errors can be in a block to try, retry-passes influences how often a block is tried. no-scrape and no-trim influence the scraping and trimming phases. I have never needed to use these extra options for ddrescue, the only thing you need in my experience is patience.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.