How to Rescue a Scratched CD/DVD on Mac OSX

Solution 1:

Step 1: Install Homebrew

In case you haven't heard of Homebrew, it's a software manager that can install all sorts of professional tools (actually, it can install almost anything) on your mac using the terminal.

For instructions on how to install homebrew, visit the Homebrew Website.

Step 2: Install ddrescue

ddrescue is an open source disk recovery tool. It is capable of copying your damaged digital media (hard disk drives / CDs / DVDs) without getting stuck on the "bad" parts of the media. It will simply replace the "bad" parts with blank space.

To install ddrescue, open Terminal and type:

MyMBP:~ MyUsername$ brew install ddrescue

Step 3: List the existing disks

Notice the last disk - /dev/disk2 is the physical DVD drive and MyDVD is the name of the DVD inserted to the drive.

MyMBP:~ MyUsername$ diskutil list
/dev/disk0 (internal):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                         251.0 GB   disk0
   1:                        EFI EFI                     314.6 MB   disk0s1
   2:          Apple_CoreStorage Macintosh HD            250.0 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

/dev/disk1 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           +249.7 GB   disk1
                                 Logical Volume on disk0s2
                                 197F2F12-3300-4DD1-8DB5-F14532F3D0B8
                                 Unencrypted

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            MyDVD                   *4.7 GB     disk2

Step 4: Unmount the DVD

To be able to rescue the DVD you should unmount it like so:

MyMBP:~ MyUsername$ diskutil unmount /volumes/MyDVD/
Volume Oct 31 2013 on disk2 unmounted

This action does not eject the drive, only makes it so other parts of the operating system won't be able to use it while the recovery is in progress.

Step 5: Recover the DVD into a .iso file

This action will try to read the entire DVD and write the recovered bytes to a .iso file which can then be used to burn a new DVD or mount directly into the operating system:

NOTE: Wait for it to finish - it can take quite a long time.

MyMBP:~ MyUsername$ ddrescue -n -b 2048 /dev/disk2 MyDVD.iso MyDVD.log
GNU ddrescue 1.22
     ipos:    2736 MB, non-trimmed:   131072 B,  current rate:    1985 B/s
     ipos:    2758 MB, non-trimmed:   327680 B,  current rate:       0 B/s
     opos:    2758 MB, non-scraped:        0 B,  average rate:   1840 kB/s
non-tried:    9223 PB,  bad-sector:        0 B,    error rate:    1260 B/s
  rescued:    2757 MB,   bad areas:        0,        run time:     24m 58s
pct rescued:    0.00%, read errors:        5,  remaining time:         n/a
                              time since last successful read:         52s
Copying non-tried blocks... Pass 1 (forwards)

Step 6: Mount the recovered .iso file and copy its content

Use this instruction to mount the .iso file to the OS. You should then be able to open this file as if it were the original DVD and recover your files. Do note, that some of the files may be broken because of the "bad sectors" but hopefully the majority of your files will be ok.

Step 7: Upvote this answer :)

I hope this process worked for you. If it didn't write a comment and I'll try to help.