CDWRITE

PREG>
Que paquetes hay disponibles para grabar CD's.

RESP>
Los paquetes debian son: mkisofs Permite crear un filesystem formato iso9660 desde un directorio de tu disco duro. Basicamente, permite crear un fichero cuyo formato interno es el de un sistema de archivos iso9660. cdwrite. Permite, a partir de un fichero creado con el formato anterior, la escritura de un cd-rom (imagino que utilizara llamadas ioctl(2) especiales para la grabación del cd-rom). Hay otros como el cdrecord y otro que no recuerdo que es par xwindows. Estan saliendo varios.

PREG>
Una vez construido un fichero imagen con mkisofs con idea de meterlo a una CD, ?Como puedo ver lo que hay dentro de ese fichero? Me gustaría ver que ha hecho con los links simbólicos y todo eso antes de pasar a quemar la CD  ?Hay algo capaz de hacer esto?

RESP>
Hay una opción del nucleo llamada loopdevice que te permite asociar un dispositivo (/dev/loop?) a un fichero. Usando esto puedes asignar el dispositivo a tu fichero imagen, y luego montarlo como si fuera un CD normal. Asegurate de que tienes el soporte de loopback en el nucleo. Luego asignas el interfaz loopback al fichero. Las ultimas versiones del mount permiten hacerlo directamente. Mirate la man del mount, y si tu versión no lo permite mirate el comando losetup. mount -t iso9660 -o loop nombre-fichero directorio-donde-lo-montas

PREG>
Si en lugar de hacer un fichero imagen gordo hago varios mas pequeqos (no tengo 600M de disco :) y los voy metiendo a la CD ?Como quedaran? ?Genera un subdirectorio para cada uno o mezcla los ficheros? ?Tiene uno que preocuparse de regenerar la estructura de directorios o lo hace el software el solito?

RESP>
Tendrías que grabar en varias sesiones. La multisesión desperdicia espacio del CD pero si no hay ma remedio, prueba con cdrecord. http://www.fokus.gmd.de/nthp/employees/schilling/schilling/cdrecord.html (tambien disponible el paquete "deb") Existe un mini howto CD-Writing bastante bueno sobre todos estos temas. Para simplificar las tareas de duplicacion de CD's podría utilizarse un shell-script para ello se usara un dispositivo SCSI de tipo generico teniendo cuidado de no elegir uno equivocado. En nuestro ejemplo usaremos /dev/sgXX. y asumiremos que tenemos allí la grabadora de CD): En cualquier caso no debe utilizarse sin más. Nadie se hace responsable de lo que pueda ocurrir. Solo es la base para que cada cual haga el suyo.
 

------------------------------8<-------------------------------------
#
# LOAD CD
# mkisofs -r -K -o cd_image private_collection/
# `---------' `-----------------'
# | |
# write output to take directory as "input"
#
# TEST CD
# mount -t iso9660 -o ro,loop=/dev/loop0 cd_image /cdrom
#
# TEST DEVICE
# SCSI ID=?? --> /dev/sgXX
# cdwrite --eject --device /dev/sgXX
#
# WRITE CD
# cdwrite --device /dev/sgd cd_image
#
df
echo "Atencion se va a borrar todo el contenido de /tmp"
rm -fR /tmp
read
mount /dev/cdrom
sleep 7
echo "Pulse enter para cargar TODO el CD en /tmp/CD.img"
read
mkisofs -r -K -o /tmp/CD.img /mount/cdrom
umount /dev/cdrom
echo "Pulse enter para comprobar la imagen. (Se montara en /mount/CD)"
read
mkdir /mount/CD 2> /dev/null
mount -t iso9660 -o ro,loop=/dev/loop0 /tmp/CD.img /mount/CD
ll /mount/CD
umount /tmp/CD.img
echo "Para grabar el CD utilice el comando:
echo " cdwrite --device /dev/sgXX /tmp/CD.img "
------------------------------8<-------------------------------------
 

OJO es fundamental identificar correctamente el dispositivo SCSI correcto ya que podriamos perder todda la informacion de un disco duro SCSI.

Para asegurarse es mejor probar primero una operacion de tipo eject. Si nos equivocamos de dispositivo mandando un eject creo que no pasa nada.

 Vuelta al Indice de Faq Admin