CD Image Conversion

From LQWiki
Jump to navigation Jump to search

CD Image Conversion

For one reason or another, you may have .nrg .bin .b5i .cdi .mdf .ccd .img .pdi files laying around that you would like to access under Linux. Here are some nifty utilities to convert those pesky 'Windows only' images into something Linux can understand (ISO format). You can then burn it to disk or mount it via loopback device.

Don't expect error correction codes and the like to be preserved, just the data... Generally speaking, these types of things are pretty irrelevant on linux to begin with. If you legally backed up some software of yours and made a 1:1 image of it under Windows, more than likely, your resulting ISO from the programs below will not contain this copy protection data. For our purposes, we just want to be able to extract files from it or convert a non-copy-protected image to ISO format.

Also be aware that the ISO format does not support multi-mode multi-track information. If you have this kind of disc, you need a good utility to convert it to a .bin/.cue combination. No such tools are listed here, and most tools won't do it properly anyway. Open up your image in ISO buster so see what kind of track information it contains.

All of the resulting binaries below should be made executable and then placed in your $PATH

The resulting ISO images can be mounted with:

mount -t iso9660 myimage.iso /mnt/cdrom -o loop

mount-iso-image for the KDE might also be of interest to you. Also, CDemu might be something to check out. Both programs can mount .bin/.cue images to a Virtual Drive, much like the Windows program Daemon Tools can. For a full program that can convert many images and do much much more, download AcetoneISO software. Yet another program that shows promise is IAT.

nrg2iso

.nrg is a Nero Image file.

nrg2iso can be compiled with a simple make

mdf2iso

.mdf is an Alcohol 120% image file.

mdf2iso can be compiled with ./configure and make

b5i2iso

.b5i is a Blindwrite Image file.

b5i2iso can be compiled with a simple make

cdi2iso

.cdi is a DiscJuggler Image file.

cdi2iso can be compiled with a simple make

img2iso

.img is a CloneCD Image file.

The actuall name of this utility is called isodump. Honestly, it's a very bad name for it seeing as how most, if not all, linux distributions already come with a program named isodump. I've taken the liberty of renaming it so it doesn't conflict with the existing program.

isodump - This is how I compile this program:

sed -i 's@isodump@img2iso@g' isodump.c
sed -i 's@isodump@img2iso@g' isodump.h
sed -i 's@isodump@img2iso@g' Makefile.Linux
sed -i 's@isodump@img2iso@g' isodump.man
mv isodump.c img2iso.c
mv isodump.h img2iso.h
mv isodump.man img2iso.man
./configure --prefix=/usr
make

The sed commands will give you a binary and man page named "img2iso" instead of "isodump"

ccd2iso

.ccd is a CloneCD image file. ('cue sheet' for .img file)

ccd2iso - This one is a little screwy as well. The make looks for the aclocal hardlink from automake-1.6...? Unless you are using aclocal-1.6, a conventional ./configure and make isn't going to cut it. There are a few ways around it. I'll leave it to your imagination. I did:

cd src/
gcc -o ccd2iso ccd2iso.c

That gave me some warnings about an ignored attribute but still works as expected.

pdi2iso

.pdi is an InstantCOPY image file.

pdi2iso can be compiled with a simple make

bchunk

.bin is a standard Windows format Image file.

bchunk can be compiled with a simple make

bchunk (binchunker) converts a CD image in a ".bin / .cue" format (sometimes ".raw / .cue") to a set of .iso and .cdr tracks. A .cue is required with this program. Often times, using this will result in 2 seperate ISO images. If this is not what you desire, use bin2iso instead.

xbiso

.xbx is an Xbox image file.

xbiso can be compiled with make clean and ./configure and make

extract-xiso

.xbx is an Xbox Image file.

extract-xiso can be compiled with a simple make

gg2iso

Actually there is no utility for this, but it can be done as follows:

$ ls

image.gi
image1.gi
image2.gi

$ cat image1.gi image2.gi > image.iso

c2d2iso

.c2d is a Roxio's WinOnCD CD Image File.

There is no standalone Application like this, you must use KIso as it's the only open-source app that supports this image format currently.

uif2iso

.uif is a proprietary file format associated with WordPerfect for Windows and compressed disk images by MagicISO.

uif2iso can be compiled with a simple make

daa2iso

.daa (Direct Access Archive) is a proprietary file format associated with PowerISO for Windows.

daa2iso can be compiled with a simple make

IsoBuster

IsoBuster runs under Wine. Cedega and CrossOverOffIce might be used instead of wine.

IsoBuster is supposed to convert any Image file format to a standard BIN or ISO.