Software to Copy a scratched CD/DVD/Blueray to an ISO file
safecopy
sudo apt-get install safecopy
safecopy is a data recovery tool which tries to extract as much data as possible from a problematic (i.e. damaged sectors) source - like floppy drives, hard disk partitions, CDs, tape devices, ..., where other tools like dd would fail due to I/O errors.
Safecopy includes a low level IO layer to read CDROM disks in raw mode, and issue device resets and other helpful low level operations on a number of other device classes.
http://safecopy.sourceforge.net
I would recommend creating an image of what is actually good in the CD. Tell dd
to keep on going even on a read error. a basic example would be:
dd if=/dev/cdrom of=cd.iso conv=noerror
you might need to add the sync and notrunc flags there if the above does not work as you wanted for a very horrible state.
dd if=/dev/cdrom of=cd.iso conv=noerror,notrunc,sync
Tne important thing here is noerror which tells dd to keep on going even when something is bad.
Use furniture polish on the discs to fill in the scratches. Alternatively you can try buffing the scratches down with toothpaste.
http://www.ehow.com/how_5786775_copy-scratched-dvds-linux.html