jueves, enero 03, 2008

Trabajando con ISOs y CDR/CDRW

Existen muchas aplicaciones gráficas para crear y quemar imágenes ISO en GNU/Linux, la mayoría de ellas son simples front-ends que llaman a las herramientas en línea de comandos para realizar el trabajo de crear y quemar las imágenes ISO. Con las utilerías mkisofs y cdrecord instaladas trabajar con imágenes ISO desde la consola es bastante sencillo.

Para crear una imagen ISO lista para quemar, utilizamos mkisofs:
$ mkisofs -r /home/jdavila > /tmp/respaldohome.iso
La opción -r le dice a mkisofs que construya las extensiones Rock Ridge en la imagen resultante. Esto significa que los nombres largos de archivos y los permisos de los mismos serán preservados cuando el disco se monte en sistemas que soportan Rock Ridge. Cualquier usuario puede crear un ISO a partir de archivos para los cuales tiene acceso de lectura; no se necesita ser root para utilizar mkisofs.

Note que mkisofs almacena el contenido de los directorios que especifiquemos en la línea de ordenes y no el directorio en sí. En el ejemplo anterior creamos un ISO con el contenido del directorio /home/jdavila/ en el directorio raíz del CD.

Si necesitamos crear un ISO a partir de un CD, utilizamos esto:
# sudo dd if=/dev/cdrom of=imagen.iso
Cuando estemos listos para grabar el ISO en un CDR, podemos ejecutar un comando parecido a este:
# sudo cdrecord -v speed=12 device=0,0,0 -data image.iso
Debemos especificar la velocidad de escritura (o menor) en la opcion speed. Si necesitamos borrar un CDRW antes grabar la ISO, pasamos el parámetro blank=:
# sudo cdrecord -v speed=12 device=0,0,0 blank=fast -data image.iso
Hacer funcionar un quemador de CDs en GNU/Linux no es tan complicado a como solía ser, gracias al driver ide-scsi. Este es un módulo del Kernel que hace que los quemadores de CD con interfaz IDE aparezcan como SCSI, que son más fáciles de programar.

Ahora ya no tienes excusas para no utilizar la consola ;-)

1 comentario:

YN1V dijo...

Yo use una variante que me dio mejor resultado:

cdrecord -v speed=12 dev=/dev/sr0 -data fine.iso

Tengo cuatro unidades de DVD copiando discos desde la misma imagen iso en distintas terminales.