User:Lonaowna/Optical disk burning
Installing required utilities
In this guide we will use cdrkit
, a fork of cdrtools
. It was forked because when cdrtools
experienced licensing issues.
Install cdrkit
From http://www.cdrkit.org/:
cdrkit
is a suite of programs for recording CDs and DVDs, blanking CD-RW media, creating ISO-9660 filesystem images, extracting audio CD data, and more.
The cdrkit package is available in the official repositories.
cdrkit
, it is recommended to install cdrtools from the community repository (cdrkit
is a fork of cdrtools
). cdrtools
is being actively developed and supports CD, DVD and Blu-ray burning along with complete CDRWIN cue
/bin
support. cdrtools
does not depend on cdrdao
. For more information, see this page from the cdrtools site.Find your drive
For the remainder of this section the name of your recording device is assumed to be /dev/cdrw
. If that is not the case, modify the commands accordingly. In order to write to the CD it needs to be unmounted. If it is not, wodim
will give you an error message.
You can try to let wodim locate your burning device with this command:
$ wodim -checkdrive
Burning an ISO image
To burn an ISO image run:
$ wodim -v dev=/dev/sr0 isoimage.iso
Verify the burnt ISO image
You can verify the integrity of the burnt CD to make sure it contains no errors. Always eject the CD and reinsert it before verifying.
First calculate the md5sum of the original ISO image:
$ md5sum isoimage.iso e5643e18e05f5646046bb2e4236986d8 isoimage.iso
If the CD was burnt in DAO (Disc At Once) mode by passing the -dao option to cdrecord you can calculate the md5sum of the burnt CD as follows:
$ md5sum /dev/sr0 e5643e18e05f5646046bb2e4236986d8 /dev/sr0
If the CD was burnt in TAO (Track At Once) mode it can be verified with dd and md5sum. You need to know the number of sectors to check. You can calculate this by dividing the size of the ISO file by 2048 bytes, but for your convenience this is included in the output of cdrecord:
Track 01: Total bytes read/written: 90095616/90095616 (43992 sectors).
Then check if this matches the md5sum of the burnt image, replacing "count" with the number of sectors:
$ dd if=/dev/sr0 bs=2048 count=43992 | md5sum 43992+0 records in 43992+0 records out 90095616 bytes (90 MB) copied, 0.359539 s, 251 MB/s e5643e18e05f5646046bb2e4236986d8 -
Erasing RW disk
CD-RW and DVD-RW media usually need to be erased before you can write new data on it. To blank a RW medium use this command:
$ wodim -v dev=/dev/cdrw -blank=fast
As you might have guessed, this blanks your medium really fast, but you can also use some other options, just replace the word fast with one of the following:
- all
- blank the entire disk
- disc
- blank the entire disk
- disk
- blank the entire disk
- fast
- minimally blank the entire disk (PMA, TOC, pregap)
- minimal
- minimally blank the entire disk (PMA, TOC, pregap)
- track
- blank a track
- unreserve
- unreserve a track
- trtail
- blank a track tail
- unclose
- unclose last session
- session
- blank last session
Burning an audio CD
1. Create your audio tracks and store them as uncompressed, 16-bit stereo WAV files.
cd
to the directoy with your MP3 files, and run:
$ for i in *.mp3; do lame --decode "$i" "`basename "$i" .mp3`".wav; done
Note: In case you get an error when trying to burn WAV files converted with lame try decoding with mpg123:
$ for i in *.mp3; do mpg123 --rate 44100 --stereo --buffer 3072 --resync -w `basename $i .mp3`.wav $i; done
2. Name the audio files in a manner that will cause them to be listed in the desired track order when listed alphabetically, such as 01.wav
, 02.wav
, 03.wav
, etc.
3. Use the following command to simulate burning the wav files as an audio CD:
$ wodim -dummy -v -pad speed=1 dev=/dev/cdrw -dao -swab *.wav
In case you detect errors or empty tracks like
Track 01: audio 0 MB (00:00.00) no preemp pad
try another decoder (e.g. mpg123) or try using cdrecord from the cdrtools package. Note that cdrkit also contains a cdrecord command but it is just a softlink to wodim.
4. If anything worked you can remove the dummy flag to really burn the CD
To test the new audio CD, use MPlayer:
$ mplayer cdda://
Burning a bin/cue
To burn a bin/cue image you will need to install cdrdao. Then run:
$ cdrdao write --device /dev/cdrw image.cue
Making an ISO image from an existing CD
To copy an existing CD just type:
$ dd if=/dev/cdrw of=/home/user/isoimage.iso
or even simpler:
$ cat /dev/cdrw > isoimage.iso
Or use the readcd
program, also in the cdrkit
package
$ readcd -v dev=/dev/cdrw -f isoimage.iso
If the original CD was bootable it will be a bootable image.
TOC/CUE/BIN for mixed-mode disks
ISO images only store a single data track. If you want to create an image of a mixed-mode disk (data track with multiple audio tracks) then you need to make a TOC/BIN pair:
$ cdrdao read-cd --read-raw --datafile IMAGE.bin --driver generic-mmc:0x20000 --device /dev/cdrom IMAGE.toc
Some software only likes CUE/BIN pair, you can make a CUE sheet with toc2cue
(part of cdrdao
):
$ toc2cue IMAGE.toc IMAGE.cue
Making an ISO image from existing files on hard disk
To make an iso image just copy the needed files to one folder, then do:
$ mkisofs -V volume_name -J -r -o isoimage.iso ~/folder
Mounting an ISO image
To test if the ISO image is proper, you can mount it (you will need to load the loop
kernel module first):
# mount -t iso9660 -o ro,loop=/dev/loop0 cd_image /cdrom
Converting to an ISO image
To convert an img
/ccd
image, you can use ccd2iso
from the ccd2iso package:
$ ccd2iso ~/image.img ~/image.iso
Burning CDs with a GUI
There are several applications available to burn CDs in a graphical environment. The use of these programs are self-explanatory.
Nero Linux
NERO LINUX is a commercial burning suite from makers of Nero for windows - Nero AG. the biggest advantage of nero linux is its interface which similar to window version. Hence, users migrating from windows might find it easy to operate. The Linux version now includes Nero Express, a wizard which takes users through the process of burning CDs and DVDs step-by-step, which users will be familiar with from the Windows version. Also new in version 4 is Blu-ray Disc defect management, integration of Isolinux for creating bootable media and support for Musepack and AIFF audio formats...
Nero Linux 4 retails at £17.99 with a free trial version also available.
Nero Linux can be installed with the nerolinuxAUR package from the AUR. You will need to enable the sg
kernel module to run it.
Features
- Easy, wizard-style user interface for guided burning with Nero Linux Express 4
- Full Blu-ray Burning Support
- Supports Burning of Audio CD (CD-DA), ISO 9660 (Joliet support), CD-Text, ISOLINUX Bootable, Multi-session Discs, DVD-Video and miniDVD, DVD double layer support.
- Advanced burning with Nero Burning ROM and command line client
K3b
According to [1], k3b is "The CD/DVD Kreator for Linux - optimized for KDE". K3b uses the Qt toolkit.
The k3b package is available in the official repositories.
- Run
k3bsetup
to set up your preferences, permissions, etc. - Run
k3b
to execute the main program.
Brasero
Brasero is another solution to CD burning if you are using GNOME.
The brasero package is available in the official repositories. If Brasero canot find you drive also install gvfs.
- Run
brasero
to run the main program.
Graveman
Graveman is a simple and almost dependency-free application for burning CDs.
The graveman package is available in the official repositories.
- Run
graveman
as a regular user to create the configuration file in~/.config/graveman/graveman.conf
(if you run graveman as root first, the permissions for this file will be wrong). - Now, in graveman, go to menu File > Preferences... > Devices and add your CD burners (If necessary, run graveman as root). Devices may already be set up correctly.
- Note that you may have to manually add your own device in Graveman's preferences and point it at
/dev/cdrom
instead of/dev/hdc
- If graveman's automatic detection points to 1,0,0 or something like that, and you get the "Currently: no media" error you may point it to
/dev/sr0
or/dev/cdrom
as noted above
Bashburn
Alternatively theres also Bashburn as a semi-GUI solution. BashBurn is the new name for the CD burning shell script Magma. It is not the best looking CD-burning application out there, but it does what you want it to do.
The bashburn package is available in the official repositories.
Xfburn
Xfburn is a simple CD/DVD burning tool from the Xfce project, and is based on libburnia libraries. It can blank CD-RWs, burn and create ISO images, as well as burn personal compositions of data to either CD or DVD.
The xfburn package is available in the official repositories.
DVD
To burn You also need the new DVD writing tools known as dvd+rw-tools found in the official repositories.
This HOWTO will use the command growisofs
from the dvd+rw-tools package. If you have ever written CDs from the command line before, you will know the process of first creating an iso9660 file (mkisofs
), and then burning it to CD (cdrecord
). growisofs
merges these steps, so you do not need extra storage space for the ISO file anymore. Another advantage is that multisession writing has been simplified.
Overview
Essentially, writing a new DVD follows this procedure:
$ growisofs -Z /dev/sr0 -r -J /path/to/files
where /dev/sr0
is your DVD writer device.
To continue a DVD (write an additional session), you use:
$ growisofs -M /dev/sr0 -r -J /path/to/files
To burn an ISO image to disc, use:
$ growisofs -dvd-compat -Z /dev/sr0 /path/to/iso
To create a video DVD, use the following:
$ growisofs -Z /dev/sr0 -dvd-video /path/to/video
-Z
- start at the beginning of the DVD using the following device
-M
- start after the last session on the disc using the following device
-r
- Rock Ridge support with sane permission settings (recommended, extended Unix info)
-J
- Joliet support (recommended, extended info for Windows NT and Windows 95)
-r
will choose different permissions than the real ones; to use the exact permissions use -R
instead. See the man page of mkisofs
for more information.readcd
:
$ readcd -v dev=/dev/sr0 -f image.isoas per CD Burning Tips, then use the
growisofs
example above to burn the ISO to a new blank disc.Example
Although the above might suffice for you, some users require extra settings to successfully write DVDs.
A simple DVD writing template:
$ growisofs -Z /dev/cdrw -v -l -dry-run -iso-level 3 -R -J -speed=2 -joliet-long -graft-points /files/=/path/to/files/
-Z
- as seen above, this starts a new DVD; to continue a multisession DVD, use
-M
-v
- increase verbosity level (more output)
-l
- breaks DOS compatibility but allows for longer filenames
-dry-run
- simulate writing (remove this flag if you are sure that everything is set up correctly)
-iso-level 3
- defines how strict you want to adhere to the iso9660 standard (
-iso-level 1
is very strict while-iso-level 4
is very loose) -R
- see above
-J
- see above
-speed=2
- start burning at 2X speed
-joliet-long
- allows longer Joliet file names
The final part needs more explanation:
-graft-points /files/=/path/to/files/
This specifies that files will be stored in the subdirectory /files
rather than the DVD root. See the mkisofs
manual for details.
growisofs
is basically just a front-end to mkisofs
. That means that any option for mkisofs
also works with growisofs
. See the mkisofs
man page for details.Re-writable DVDs
The process for burning re-writable discs is almost the same as for normal DVDs. However, keep in mind that virgin DVD+RW media needs to be initially formatted ("blanked") prior to usage. Blanking can be done using the program dvd+rw-format
like this:
$ dvd+rw-format /dev/cdrw
where /dev/cdrw
is your DVD writer device.