Mark Knecht wrote:
How about just unmounting the disk and trying:
        dd if=/dev/cdrom of=EXILE_DISK_1.iso
perhaps? That'll give you an exact (and burnable) copy of the disk.


Not a happy dd process...

Gentoo2 root # dd if=/dev/cdrom of=EXILE_DISK_1.iso
dd: reading `/dev/cdrom':Input/oupuut error
3304+0 records in
3304+0 records out

It fails for some of these reasons:


1. broken CD
2. end of CD (to check it, mount cd, run "df" and compare sizes)
3. copy protected CD.

It can be a problem to differentiate reasons 1.and 3. because
some manufacturers probably use the same copy protection method
as used on floppies in old times ... some theory follows:

Sector on CD is 2352 Bytes, 2048 for data, the rest is for
headers and CRC. Normally every sector's CRC is calculated
from sector's data (IMHO calculated by CD burner itself).
In this way it's possible to read a CD even if reading of
some bits fails (for different reasons).

Sector intentionally burned with broken CRC and/or header (yes,
it's possible to do!) can be used as copy indicator, because
on original CD read error occurs (data still can be read OK),
but on copied CD the error is "corrected".

dd command will fail with broken sector msg or so.
U can still read it using this command:

dd if=/dev/cdrom of=my.iso conv=noerror bs=1k count=[size shown by df]

The problem is to burn the image now, because if u burn it in
usual way, CRC/header of the "broken" sector will be burned properly.

There are for sure other possibilities how CD's can be copy protected
and still readable by dd without any error ( e.g. info from CD's header
can be checked etc.)

I don't know about linux SW, which can clone such CD's,
but I heard "clonecd" or "nero" for micro$hit should do it.

noro


-- [EMAIL PROTECTED] mailing list



Reply via email to