How do I make an ISO from a disc?
I have a disc here, and I need to take an ISO image of the disc. Is there a piece of software I can use to get the image from the disc, or does Ubuntu ship with one?
Solution 1:
Use Brasero Disc Burner:
Or via the terminal, run the following command.
sudo apt-get install brasero
To copy a disc to an ISO image, click on Disc copy
, then choose Image File
as the destination.
Solution 2:
While Brasero is probably easier, if you're interested, here's how to create an iso from the command line using mkisofs:
genisoimage -r -J -o cd_image.iso /directory
The -r and -J tags allow for long filenames. -o stands for output, followed by the output file and directory. Afterwards, you can mount the image using mount, or burn with wodim.
The Community Help Wiki for Ubuntu is a fantastic resource. Take a look at the link for more details.
Solution 3:
Graphical apps such ad Brasero
or K3b
should work fine for creating an iso from a disk, but there are actually several ways of doing it. I have always used the slightly more complicated, but for my old hardware, more reliable, way that uses dd/if
. If you are confident doing it this way (or old fashioned), it has always worked for me:
-
First place the disk in your drive and get the block and volume size with
isoinfo -d -i /dev/sr1
or whatever the /dev
node is for your target drive.
-
Next run the following, replacing the
/dev
node with your own and place the block and volume numbers gained fromisoinfo
where<isoinfo result>
occurs below:dd if=/dev/sr1 bs=<isoinfo result> count=<isoinfo result> of=/home/mike/Folder/thegreat.iso
(Some example values reported by
isoinfo
for a physical disk are:"Logical block size is: 2048, Volume size is: 309669"
. So, in thedd/if
commands above, bs would be 2048 and count would be 309669. Do not use these values, however, use the onesisoinfo
gives for your own disk.)Also make sure you use the correct
/dev
node of your cd/dvd drive, eg. usually/dev/sr0
,/dev/sr1
.
Even though most people use graphical apps, I found that the dd/if
method worked more reliably than brasero
for me.
I have prepared a script for making an iso from a disc.
As I use positional parameters in the script, you must specify the device ($1
) and the iso to be created ($2
),
As an example, if it is not in your ~/bin
, you could call it with:
./script_name.sh /dev/sr0 /home/$USER/new.iso
The contents of the script; make it executable with chmod u+x
after creating it.
#!/bin/bash
# $1 and $2 are specified on the command line when the script is called; $1 must be /dev/sr0 or whatever is the drive; $2 is the location and name of iso to be created
val1="$(isoinfo -d -i "$1" | grep -i "block size" | awk -F ': ' '{print $2}')"
val2="$(isoinfo -d -i "$1" | grep -i "volume size" | awk -F ': ' '{print $2}')"
dd if="$1" bs="$val1" count="$val2" of="$2"
exit 0
Solution 4:
Default burner app in ubuntu Brasero
can do that. It is shipped with ubuntu.
Choose Copy CD/DVD
option. In properties you choose the type (.iso)