Grabación de CDs desde la línea de comandos

Usaremos los programas: dd, mkisofs, cdrecord, cdrdao

dd

Se usa para extraer una imagen desde un CD al disco duro (para su posterior grabación en CD).
Debes usarlo sólo para CDs de datos (no funciona con audio, CDs mixtos, juegos, etc.)

Su sintaxis es la siguiente:

# dd if=/dev/cdrom of=/ruta/imagen.iso
Si usas una distribución distinta a Guadalinex, puede que en lugar de /dev/cdrom tengas que usar /dev/hdx
Para averiguar que letra poner en x teclea: $ dmesg | grep '^hd.:'

Para grabar la imagen en un CD puedes usar cdrecord


mkisofs

crea imegenes.iso (a partir de ficheros del disco duro de cualquier tipo) para su posterior grabación en CD

Su sintaxis es la siguiente:

# mkisofs [opciones] [-o /ruta/nombre_fichero_imagen] ruta_origen [-x ruta_carpetas_a_excluir]

[opciones]

entre las opciones más destacadas tenemos:

-J .. datos tipo Joliet (si vamos a usar el CD en Windows)
-R .. datos de tipo Rock Ridge
(si vamos a usar el CD en Linux)
        Se pueden incluir las dos opciones (-J y -R) para obtener compatibilidad en ambas plataformas
-V etiqueta .. Establece un ID de volumen — un nombre que se asignará si se quema la imagen y se monta el disco en entornos Windows.
-r .. para que en sistemas Linux puedan acceder al CD todos los usuarios
-v .. muestra información del proceso

ruta_origen .. ruta donde están los ficheros que vamos a incluir en la imagen
(aunque se puede especificar más de una ruta, es aconsejable poner antes todos los datos en una misma carpeta)

[-o nombre_fichero] especifica el nombre de fichero que tendrá la imagen, es decir, la imagen será nombre_ficjero.iso y si no indicamos ruta, se grabará en la carpeta actual (en la que estemos situados cuando invoquemos el comando mkisifs)

[-x ruta_carpetas_a_excluir] excluye subcarpetas (de la carpeta ruta_origen)
se puede repetir: -x ruta1 -x ruta2

Para más información teclea: #man mkisofs


cdrecord

Lo usaremos para grabar CD's (datos, audio o mixtos) a partir de imágenes.iso o directemente desde el CD original

Antes de usar cdrecord debemos hacer un escaneo de dispositivos:

# cdrecord -scanbus

Obtendrás una salida similar a la siguiente

Cdrecord-Clone 2.01a19 (i686-pc-linux-gnu) Copyright (C) 1995-2003 Jörg Schilling
Linux sg driver version: 3.1.25
Using libscg version 'schily-0.7'
scsibus0:
0,0,0 0) 'PLEXTOR ' 'CD-R PX-W1210A' '1.10' Removable CD-ROM
cdrecord.mmap: Warning: controller returns wrong size for CD capabilities page.
0,1,0 1) 'LG ' 'CD-ROM CRD-8521B' '1.00' Removable CD-ROM
0,2,0 2) *
0,3,0 3) *
0,4,0 4) *
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *

Anota el número de tus dispositivos (lo necesitarás después).

La sintaxis de cdrecord es la siguiente:

# cdrecord [opciones] dev=dispositivo [opciones_pista] pistas

dev=dispositivo .. ponemos el número que nos detectó scanbus
(ejemplo dev=0,0,0)

[opciones]

-v .. modo verbose (muestra más información durante el proceso)
-dummy
..
indicamos que vamos a hacer un test de la unidad y del sistema, simulando una grabación para comprobar si se realiza adecuadamente. No hay riesgo de perder un CD.
-multi
..
para hacer un CD multisesión
-eject .. expulsa el CD una vez grabado
speed=X .. para indicarle la velocidad de grabación

blank=opcion . . borra un CD-RW y sale o bien borra antes de continuar con una grabación. Sólo para discos CD-RW. Las opciones más importantes son:

driveropts=burnfree .. si la grabadora tiene la tecnología BurnFree (levantar el láser cuando no le llegan datos)
fs= especifica el buffer fifo para almacenamiento intermedio de los dato. Ej: fs=8m.
[por defecto es 4 Mb (4m). Con 32m o 64m
tienes de sobra. No subas a más de la mitad de tu RAM física]
-overburn
Grabar con más capacidad de la que dispone el disco. El CD puede quedar inutilizable

[opciones pista] pistas .. aquí ponemos las imágenes de datos, las pistas de audio o ambos

-data imagen.iso (para grabar una imagen)
-audio nombre_pista.wav (para grabar pistas de audio)

Podemos poner varias pistas de audio. Si además las tenemos con los nombres pista1.wav, pista2.wav, ... podemos usr un asterisco:
-audio pista*.wav
También podemos combinar datos y audio para hacer un CD Mixto (primero datos y después audio)

-isosize /dev/cdrom .. graba directamente (sin imagen)

Ejemplos

Crear imagen.iso (desde un CD)

# dd if=/dev/cdrom of=/home/usuario/imagen.iso

Crear imagen.iso (de los ficheros de mi carpeta /home/usuario/mi_cd)

# mkisofs -J -R -v  -o /home/usuario/imeges_cd/imagen.iso /home/usuario/mi_cd

Grabar una imagen.iso ubicada en /home/usuario/images_cd/imagen.iso

# cdrecord -scanbus
# cdrecord -v -eject -speed=12 driveropts=burnfree -data /home/usuario/images_cd/imagen.iso


Duplicar un CD (con imagen)
# dd if=/dev/cdrom of=/home/usuario/imagen.iso
# cdrecord -scanbus
# cdrecord -v -eject -speed=12 driveropts=burnfree -data /home/usuario/imagen.iso
Duplicar un CD (al vuelo)

# cdrecord -scanbus
# cdrecord dev=0,0,0 speed=2 -v -eject -isosize /dev/cdrom

Borrar un regrabable

# cdrecord -scanbus
# cdrecord dev=0,0,0 speed=4 blank=all -v -eject


Comentarios: algunas opciones de cdrecord se pueden predefinir en el fichero de configuración /etc/cdrecord.conf



cdrdao

Es un programa que permite copiar CDs de cualquier tipo, incluyendo datos, audio, mixtos  e incluso  CDs con protección  como los de Paystation.
El programa cdrdao no viene en la distribución GuadaLinex, por lo que necesitamos instalarlo:

#apt-get update
#apt-get install cdrdao

La sintaxis es la siguiente:

# cdrdao comando [opciones] archivo-toc
comando: le indicamos lo que queremos hacer. Los más usados son:

read-cd : para extraer una imagen
write: para grabar un una imagen
copy: para copias al vuelo

[opciones]

--device x,y,x     (indica la grabadora. Ejemplo: device 0,0,0)
--source-device x,y,z  (indica el lector. Opción necesaria si usamos el comando copy para copia al vuelo)
los parámetros de las dos opciones anteriores puedes sacarlos de #cdrecord -scanbus
--simulate   (hace una simulación con el láser levantado)
--eject  (expulsa el CD al terminar la grabación)
--on-the-fly  (copia al vuelo sin crear imagen en el disco duro)
--buffers x (como mínimo 10, aunque mejor iran 32 o 64)
--paranoia-mode x (Se usa para la extracción de audio. Debemos indicar 0, ano ser que el CD original esté castigado, entonces podemos poner 1, 2 e incluso 3)

Ejemplos:

Para realizar una copia, al vuelo, de un CD  de audio o que contenga pistas de audio usaría :
 
cdrdao copy -v 2 --device 0,0,0 --source-device 0,1,0 --speed 12 --buffers 64 --reload --eject --on-the-fly --fast-toc --paranoia-mode 0

Podemos obtener más información sobre cdrdao en su página man:
# man cdrdao

No obstante, resulta más facil usar su versión gráfica: gcdmaster