Command-line CD-burning

Install CD-burning utilities

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 programs included in the cdrkit package were originally derived from several sources, most notably mkisofs by Eric Youngdale and others, cdda2wav by Heiko Eissfeldt, and cdrecord by Jörg Schilling. However, cdrkit is not affiliated with any of these authors; it is now an independent project.

If you intend to use cdrdao (for writing cue/bin files to CD), install that package instead.

Note: If you face any issues with 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.

Note: Make sure that you build a package using makepkg and install with pacman. Pacman wrappers may resolve to cdrkit instead.

Setting permissions

Users that should be able to use CD/DVD burning devices must have permissions to access the devices. If you are using udev (which is default in Arch Linux kernels), you only need to add the user(s) to the optical group:

# gpasswd -a <username> optical

Log out and back in for the changes to take effect.

Modifying the CD-RW

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

Erasing CD-RW

CD-RW media usually need to be erased before you can write new data on it. To blank CD-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:

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 (as root):

# mount -t iso9660 -o ro,loop=/dev/loop0 cd_image /cdrom

You have to first load the loop module:

# modprobe loop

Converting to an ISO image

To convert an img/ccd image, you can use ccd2iso:

# pacman -S ccd2iso
$ 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...

Graveman

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 in official repositories 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.

Recorder

Recorder is a graphical front-end of cdrkit/cdrtools, cdrdao, mkisofs and growisofs. It aims to be simple and easy to use, free of large configurations and useless options, following the KISS principle and offering a disc burning of quality, nothing more.

Troubleshooting

About Locale

When running K3B, if the following message appears

System locale charset is ANSI_X3.4-1968
Your system's locale charset (i.e. the charset used to encode file names) is
set to ANSI_X3.4-1968. It is highly unlikely that this has been done intentionally.
Most likely the locale is not set at all. An invalid setting will result in
problems when creating data projects.Solution: To properly set the locale
charset make sure the LC_* environment variables are set. Normally the distribution
setup tools take care of this.

It means that your locale is not set well.

To fix it,

Remove /etc/locale.gen

# rm /etc/locale.gen

Re-install glibc

# pacman -S glibc

Edit /etc/locale.gen, uncommenting all lines lines that corresponds to your language AND the en_US options, for compatibility.