Answers & Reasons
Hey everybody! This thread is talking about two different things: building images and imaging.
Imaging (at least the kind of imaging in this thread's context) is dumping the raw contents of a disc into a file. This is VERY different than copying only the files and folders off a CD. There is much more to a CD than just files and folders, such as one or more filesystems, a volume label for each filesystem, several other "labels" (one is a label stating the program used to burn the disc), sometimes boot information, etc.
Building an image is the process of selecting files, folders, ior boot info to be thrown into a magical machine (hdiutils, in this case) that weaves them into a new filesystem/ structure and outputs a CD image that can then be burned to a disc (or mounted). Notice this is a fresh new making of the entire CD structure - you get to pick the filesystem and everything.
The original question is excitingly vague (it doubles the fun!) because we don't know if Lamina wants to build an iso, or image a CD, yielding an iso:
I want to create an .iso image and have it compatible with Mac and Windows. Will Disk Utility let me do this?
So we ought to answer for both possibilities...whoopie!
Robbieduncan did an absolutely exquisite job of answering the building half:
Create a folder with the contents you want on your ISO.
Open Disk Utility and use the New Image from Folder menu item to create an image. Ensure it is uncompressed and use the CD/DVD master option.
In my experience this creates HFS+ masters which are no good in Windows.
Open the Terminal
Assuming your new image is called ~/Desktop/Master.cdr (the file is on your desktop and called Master.cdr) type:
Code:
cd ~/Desktop
hdiutil makehybrid -iso -joliet -o Master.iso Master.cdr
This will create an ISO/Joliet .iso file.
...but no one answered if a CD can be *.iso'd IN DISK UTITLITY. Yes, tgage went on to say it could be done with dd (don't get me wrong, it's GREAT info!), but the original question was if it could be done in Disk Utility. Yes, it can be done in Disk Utility. Just chose DVD/CD master, let it go, then rename the outputted file from *.cdr to *.iso. The file is already an iso file to begin with (we didn't do any magical converting by renaming it), it just was "misnamed." In fact, the box with the status bar as it is being imaged shows the text "APPLE_ISO." This *.iso file will be compatible with anything that takes iso files. The lesson is that a dump of a disc is always a dump of a disc, no matter what it has been named. A raw dump is not capable of being incompatible with anything because it is just raw. Dimwhit can at least somewhat back me up on that:
Make a .img image and change the extension to .iso. Works for me.
This is why halfl1fe was able to boot off the *.cdr (it IS an iso, at least when imaged from a CD), which contained boot info, as it is an accurate replication of the original disc.
hi i followed the instructions in robbieduncan's post for creating .iso file, but my windows virtual machine would not load from it. however, it will load from the .cdr file so actually you can skip the "makehybrid" step.
He could not, however, boot off the *.iso that was made with hdiutils that took (probably only, or close to it) the files contained in the *.cdr, and re-wove them into a new filesystem/ structure without boot info. Thus this re-make is not identical to the original disc, and is not bootable because it has no boot info. The boot info is NOT a file, it is just a bunch of 1s and 0s chillin' out in a special spot on the disc outside any partition or filesystem. I know that with mkisofs, there is a switch you can specify to tell it to use a boot image file, and it will suck boot information into the tapestry as it weaves away a new image file from scratch. There probably exists a "use this boot image" switch for hdiutils.
I even personally tested all these things to make sure what I am saying is correct. I installed VirtualBox into Mac OS. I have an iso image of a bootable Windows 98 install CD. VirtualBox boots this iso image just fine. I burned this iso image to a physical CD. I imaged this physcial CD in Mac OS with Disk Utility with the DVD/CD master option picked, so it gave me a *.cdr image file. I got the md5 hash of both the ORIGINAL iso file and the *.cdr made from the CD made from the original. Their hashes matched, therefore they were IDENTICAL. Here's the syntax for finding the md5 hash of any file in Mac OS (or Linux) through terminal:
Code:
openssl md5 [Drag file into terminal here to insert the path to that file, but don't forget the space between 'md5' and the path.]
I also experimented with the hdiutils makehybrid method from Robbieduncan, but out of its intended context just to gain some info. I renamed my Windows 98 install CD iso on my desktop to Master.cdr, and after cd'ing to my desktop (changing directory of terminal) I ran:
Code:
hdiutil makehybrid -iso -joliet -o Master.iso Master.cdr
Oddly, the input is placed after the output here. Commandline utilities are almost ALWAYS input then output, in fact, this is the first I've seen contrary to that. I was yielded a re-made image assembled by hdiutils named "Master.iso". The hashes DID NOT MATCH. This means the files are NOT identical. To be sure, I tried to boot the re-make with VirtualBox. Not bootable. Tried to boot the original; it booted.
Does this mean Robbieduncan's method is bad? Of course not! His method is intended for building images from scratch (using source files and folders), not making images of existing CDs.
Note that dd adds extra zeros to the end of image files it makes of CDs. Most programs (including Disk Utility) do not add extra zeros. This will make the hash of a dd-made iso not match the hash of a Disk-Utility-made iso, even if you use the same physical CD to do both. I have tested this myself. It adds zeros to the file until the file size in bytes is a "nicer" looking number. Dd-made isos are still good.
And tgage, although dd can dump an audio CD to an image file, it is a mistake to name such a dump with the file extension "iso", even though nothing stops you from doing it. The act of naming a file with the extension "iso" is saying to every person who looks at that file that "this file is a CD image with an ISO 9660 compatible filesystem and is comprised of only one track." That's what people educated in this area expect when they see a file named with that file extension (not that you're not educated, because obviously you are). It's a naming convention standard, and it is the definition of an iso image file. The iso image standard only allows for one track. Audio CDs not only usually have more than one track, none of these tracks have a filesystem. Each track is raw digital audio data. An audio CD is pretty much a digital record, where the player just fires its laser at the disc, lets it spin, and the data coming out is directly interpreted as sound, without the need of a driver to understand a filesystem (as it would need if the audio data was instead a sound file in the ISO 9660 filesystem, or even the HFS+ for that matter), and it also does not need the ability to parse the file after finding the file with such a driver. There is still structure, but not as intense as say a thumb drive or regular CD/DVD.
So Calatis, it appears that you used an iso burning program to burn the dump you made of an audio CD to a physical CD. I imagine that you (no offense) misnamed the dump with the *.iso extension, then told an iso burning program to burn this non-iso to a CD. Iso burning programs are geared for burning isos, at least while they are burning one to a disc. There are two burning modes, TAO and DAO. They are Track at Once and Disc at Once. Disc at Once allows for more direct control of the hardware than Track at Once allows. Audio CDs have a very strange structure (no filesystem, multiple tracks, etc.) and therefore need the more direct hardware access offered by DAO to be burned (can't make this wierd structure with the limits of TAO). Actual isos (no offense, tgage
) can be burned with just the TAO method (because they are "normal," have a filesystem, have only one track, etc.). Therefore, it isn't unreasonable to suppose some iso burning programs only use TAO because that is all they need. When you forced an audio dump to be burned in TAO mode, it couldn't burn right because TAO can't burn some of the stuff in that dump (like song titles and all that stuff you said that went away). TAO also automatically inserted those 2-second gaps. Since it thought it was burning an iso (which only have one track), it is no wonder your audio CD came out to be one long track with 2-second pauses. Check
this site out for more details.
Also Calatis, note that Mac's iso mounter is not a true CD emulator. It does not actually emulate hardware at all. It is a pseudo-device. Pseudo-devices need a filesystem in the image file they are mounting to work. Pseudo-devices are the doing of the driver itself, and the whole system knows that the pseudo-device is not a real CD. It doesn't even try to make it look like hardware at all. A true CD emulator makes it impossible to know if the emulated CD reader is real or not. Because of the pseudo-device's need of a filesystem to mount an image file, and since the audio dump has no filesystem (made from disc with no filesystem), Mac could not mount the audio CD image. In contrast, Magic Disc, a true CD emulator for Windows, can mount audio disc images properly, and you can play the music right off the emulated drive as if it were a real audio CD.