Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Mar 2000 17:50:28 +0100 (MET)
From:      David Wahlstedt <md6dw@mdstud.chalmers.se>
To:        Kiril Mitev <kiril@ideaglobal.com>
Cc:        freebsd-questions@FreeBSD.ORG, David Kelly <dkelly@hiwaay.net>, thallgren@yahoo.com, Charles Henrich <henrich@crh.cl.msu.edu>
Subject:   Re: how to make an ISO image of a CD ?
Message-ID:  <Pine.SOL.4.21.0003201714460.28420-100000@rizzo8.mdstud.chalmers.se>

next in thread | raw e-mail | index | archive | help

Hello !

I have a similar experience as David Kelly (June-99 in the archive).

I'm running FreeBSD-3.4-STABLE with an ATAPI cdrw by philips (PCRW404).

A problem seems to be that when reading with 

 dd if=/dev/racd1c of=my_file.iso bs=2k

it gives Input/Output error at the end. (maybe it does no harm ?)

To determine how many blocks to read i've used Charles Henrich's program
"cdd" from the ports collection. cdd lists the tracks and their length,
but it thinks the data disc contains one long audio track. Anyway it tells
its length.

So when using this length measure as count for dd it sometimes works,
sometimes not. Sometimes dd gives the i/o error one or two blocks
before the end and sometimes not.

After having burned an image of "correct" length, I do cdd on the new disc.
Now 2k less than in the image file are reported. I burn with the
/usr/share/examples/atapi/burncd.sh


In most cases diff -r /cdrom1 /cdrom2 on the mounted original and copy finds
no errors, but i'm still not sure it's really correct.

Does anyone know how to "really" do it ?


Is there some way to use cdrdao with ATAPI-devices ?



Regards, 



          David Wahlstedt





David Kelly wrote:

>
>Kiril Mitev writes:
>> > You shouldn't need anything special.  I can make an image from my
>> > SCSI drive with:
>> > 
>> > $ dd if=/dev/rcd0c of=image.iso bs=2048
>> > 
>> > You should substitute /dev/rwcd0c since you have an IDE drive, I
>> > suppose.  Without the "bs=2048" I get errors due to the blocks read
>> > being shorter than the CD-ROM's sector size.
>> 
>> Thanks, but will it have all relevant ISO header stuff & such as well ?
>
>If the original is a single session CD, then the above will work. But 
>might barf exactly two blocks before the end. In prior employment I 
>spent a lot of time making image dupes of CDs. Most I had mastered 
>myself. Too many to keep the mkisofs image laying around for future 
>use. 
>
>So I had (now lost) a script which used "cdrecord" in its querry mode 
>to tell me how many sessions and how many blocks were on the CDROM. I 
>subtracted 2 from the reported block count. Then used this count with 
>dd to read the image from the CDROM. Irix and FreeBSD handle raw SCSI 
>errors differently. Am not sure how important it is to skip the last 
>two runout blocks under FreeBSD. Found if I didn't skip them, each 
>generation my CD grew by two blocks as cdrecord adds two more.
>
>System was an SGI O2 with Irix 6.3. A built in CDROM. Plus an external 
>CD-R. Irix wouldn't mount the CD-R but cdrecord had no problems 
>writting.
>
>So after I read my image from the internal CD. I launched cdrecord 
>writting to the CD-R. At the same time I used "find" to walk the CD 
>filesystem generating md5 sums for every file. When that finished the 
>script kicked out the original.
>
>When the CD-R was finished writting, it was ejected too. Then the 
>operator was instructed to place the copy in the internal CD. Then my 
>script started verifying the files using md5.
>
>A fancy version of the script would start writting another copy while 
>the prior was being verified.
>
>Couldn't find anything in Irix like FreeBSD's vnode, so there was no 
>way to mount the CD image file as we can with FreeBSD.
>




-------------------------------
David Wahlstedt
SWEDEN

email: md6dw@mdstud.chalmers.se



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SOL.4.21.0003201714460.28420-100000>