Difference between revisions of "CD Burning"

From ArchWiki
Jump to: navigation, search
(K3B says that there are no Burning Devices: These fix is not needed in systemd.)
(21 intermediate revisions by 12 users not shown)
Line 1: Line 1:
#REDIRECT [[Optical_Disc_Drive#CD_burning]]
[[it:CD Burning]]
[[zh-CN:CD Burning]]
{{Article summary start}}
{{Article summary text|This document outlines various methods of burning CDs.}}
{{Article summary heading|Related}}
{{Article summary wiki|DVD Burning}}
{{Article summary end}}
== Command-line CD-burning ==
===Install CD-burning utilities===
From http://www.cdrkit.org/:
:''{{Ic|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 {{Ic|cdrkit}} package were originally derived from several sources, most notably {{Ic|mkisofs}} by Eric Youngdale and others, {{Ic|cdda2wav}} by Heiko Eissfeldt, and {{Ic|cdrecord}} by Jörg Schilling. However, {{Ic|cdrkit}} is not affiliated with any of these authors; it is now an independent project.
The {{pkg|cdrkit}} package is available in the [[Official Repositories|official repositories]].
If you intend to use {{pkg|cdrdao}} (for writing {{ic|cue}}/{{ic|bin}} files to CD), install that package instead.
{{Note|If you face any issues with {{Ic|cdrkit}}, it is recommended to install {{pkg|cdrtools}} from the community repository ({{Ic|cdrkit}} is a fork of {{Ic|cdrtools}}). {{Ic|cdrtools}} is being actively developed and supports CD, DVD and Blu-ray burning along with complete CDRWIN {{ic|cue}}/{{ic|bin}} support. {{Ic|cdrtools}} does not depend on {{Ic|cdrdao}}. For more information, see [http://cdrecord.berlios.de/private/linux-dist.html this page] from the cdrtools site.}}
{{Note|Make sure that you build a package using [[makepkg]] and install with pacman. Pacman wrappers may resolve to cdrkit instead.}}
===Modifying the CD-RW===
For the remainder of this section the name of your recording device is assumed to be {{ic|/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, {{Ic|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:
;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 ISO image===
To burn an ISO image run:
$ wodim -v dev=/dev/cdrw isoimage.iso
===Burning an audio CD===
1. Create your audio tracks and store them as uncompressed, 16-bit stereo WAV files.
{{Tip|To convert MP3 to WAV, ensure {{pkg|lame}} is installed, {{ic|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 {{pkg|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 {{ic|01.wav}}, {{ic|02.wav}}, {{ic|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 {{pkg|cdrtools}} package.
Note that {{pkg|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 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 {{Ic|readcd}} program, also in the {{Ic|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 {{Ic|toc2cue}} (part of {{Ic|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 {{ic|img}}/{{ic|ccd}} image, you can use {{Ic|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...
* [http://www.nero.com/enu/linux4.html Nero Linux 4]
* {{AUR|nerolinux}} [[Arch User Repository|AUR]] package
* 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
Nero Linux 4 retails at £17.99 with a free trial version also available.
For Nero Linux you need
MODULES=( sg )
in rc.conf. Some updates ago the sg module wasn't auto loaded any more and Nero needs it.
According to [http://k3b.plainblack.com/], k3b is "The CD/DVD Kreator for Linux - optimized for KDE". K3b uses the [[Wikipedia:Qt (toolkit)|Qt]] toolkit.
The {{pkg|k3b}} package is available in the official repositories.
# pacman -S k3b
Run {{Ic|k3bsetup}} to set up your preferences, permissions, etc.; run {{Ic|k3b}} to execute the main program.
Brasero is another solution to CD burning if you are using [[GNOME]].
* Install {{pkg|brasero}} with [[pacman]].
* Run {{ic|brasero}} to run the main program.
Graveman is a simple and almost dependency-free application for burning CDs.
* {{AUR|graveman}} is available in the [[Arch User Repository|AUR]].
* Run {{ic|graveman}} as a regular user to create the configuration file in {{ic|~/.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 {{ic|/dev/cdrom}} instead of {{ic|/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 {{ic|/dev/sr0}} or {{ic|/dev/cdrom}} as noted above
Alternatively theres also [http://bashburn.sourceforge.net/ Bashburn] in [[Official Repositories|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.
* Install {{pkg|bashburn}} with [[pacman]].
Xfburn is a simple CD/DVD burning tool from the [http://www.xfce.org/projects 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.
It can be found in the [[Official Repositories|official repositories]].
* Install {{pkg|Xfburn}} with [[pacman]].
{{Warning| there is a critical bug in Recorder where it tries to remove files in your $HOME: see https://bugs.archlinux.org/task/31673 It is also no longer supported upstream.}}
[http://code.google.com/p/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.
* Install {{aur|recorder}} from the [[AUR]]
* Discussion thread: [https://bbs.archlinux.org/viewtopic.php?id=47253 Recorder - A simple GTK+ disc burner]
====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 {{ic|/etc/locale.gen}}
# rm /etc/locale.gen
* Re-install {{ic|glibc}}
# pacman -S glibc
* Edit {{ic|/etc/locale.gen}}, uncommenting all lines lines that corresponds to your language AND the {{ic|en_US}} options, for compatibility.
en_US.UTF-8 UTF-8
en_US ISO-8859-1
* Re-generate the profiles with {{ic|locale-gen}}
# locale-gen
Generating locales...
en_US.UTF-8... done
en_US.ISO-8859-1... done
pt_BR.UTF-8... done
pt_BR.ISO-8859-1... done
Generation complete.
More info [https://bbs.archlinux.org/viewtopic.php?pid=251512%29; here]
====Brasero fails to find blank discs====
Brasero uses gvfs to manage CD/DVD burning devices.
* Install {{pkg|gvfs}} with [[pacman]].

Revision as of 18:11, 22 July 2013