For a CD-ROM, use /dev/disk1s0
and not /dev/disk1
.
/dev/disk1
will access the raw 2352-byte blocks, which is useful if you are reading an audio CD. On a CD-ROM, 2048 of the 2352 bytes are used for data and most of the rest are for error correction. When you read /dev/disk1s0
, it will use the error correction codes to correct any errors if possible and return the (possibly corrected) 2048 data bytes of each block, which is what you want for an ISO image.
Note that this is different for DVD-ROM, where you would use /dev/disk1
. DVD-ROM uses a different error correction scheme which spreads the data across the disk more in order to provide better error resilience. There is not a separate device name that can be used to read the DVD data with the error correction codes included.