Crear un Live CD en Linux

Un Live CD es un CD que contiene un Sistema Operativo Linux completo (junto con diversas aplicaciones) que puede ejecutarse desde el CD sin necesidad de instalarlo en el disco duro, utilizando únicamente la memoria RAM.

Se suelen utilizar como dispositivo de rescate para arrancar una máquina con problemas, como demo para mostrar Linux a usuarios que no lo conocen o como test para comprobar la compatibilidad del hardware.

En Linux disponemos de varias herramientas para crear nuestro propio Live CD, como por ejemplo:

  • dfsbuild.
  • bootcd.
  • mklivecd.

Crear un Live CD con dfsbuild

dfsbuild (paquete dfsbuild) nos permite crear nuestro propio Debian From Scratch Live CD, con los paquetes que nosotros seleccionemos.

El proceso para crearlo es el siguiente:

  1. el archivo de configuración es /etc/dfsbuild/dfs.cfg. Las principales directivas a configurar son el repositorio a usar, desde donde dfsbuild descargará los paquetes incluidos en el Live CD (por defecto testing):
    # Repositories to mirror. Details about each one are configured below.
    dlrepos = testing
     
    # Repository to build the CD with.  Must be in above list.
    suite = testing
     
    [repo testing]
    suite = testing
    mirror = http://http.us.debian.org/debian

    El kernel a usar:

    # Debs from local fs to unpack on live FS (will not be configured)
    unpackdebs = /var/cache/apt/archives/kernel-image-2.6.8-2_i386.deb

    Y la lista de paquetes a incluir en el Live CD:

    # Packages to install on live FS, on all archs, besides base system
    allpackages = util-linux mkisofs cdrecord dvd+rw-tools ocaml hugs ghc6
            perl vim nano joe libncurses5-dev ftp ssh telnet elinks less
            zip unzip tar info man-db manpages-dev manpages cdebootstrap
            diff patch gawk tcpdump bash devfsd module-init-tools modutils
            rsh-client tftp traceroute iputils-tracepath strace iputils-ping
            iptraf iproute ipchains ipfwadm iptables ifupdown dhcp-client
            bind9-host whois dnsutils rsync rdiff-backup mutt netcat epic4
            cpio buffer alien bzip2 dpkg-dev devscripts busybox-static sudo
            dash sash pciutils hotplug discover buffer cramfsprogs minicom
            hdparm ntpdate disktype ddrescue umsdos recover dpkg-repack
            devscripts debhelper emacs21-nox mtr-tiny python-dev sysutils
            build-essential g++ wget lftp lynx cu debconf grep-dctrl lsof
            screen gnupg dfsbuild less

    Además, podemos crear archivos:

    [createfiles]
    /etc/hostname = bootablesystemshostname
     
    [createfiles]
    /etc/resolve.conf = search my.flat
    search 192.168.1.1

    Borrarlos:

    [deletefiles]
    /etc/hostname

    Añadir líneas a un archivo existente:

    [appendfiles]
    /etc/network/interfaces = iface eth0 inet dhcp
      iface eth1 inet dhcp
      iface eth2 inet dhcp
      iface wlan0 inet dhcp
      iface wlan1 inet dhcp
      iface wlan2 inet dhcp
      iface ath0 inet dhcp

    O crear enlaces simbólicos:

    [symlinks]
    /etc/mtab = /proc/mounts
  2. para construir el Live CD ejecutaremos el comando (el directorio <dir> debe estar vacío, ya que su contenido será eliminado sin pedir confirmación):
    # dfsbuild -c /etc/dfsbuild/dfs.cfg <dir>
  3. dfsbuild descargará los paquetes y generará el archivo <dir>/image.iso, que contiene la imagen .iso del Live CD y el directorio <dir>/image que contiene los archivos utilizados para construir el Live CD. Parece ser que además se genera el directorio /opt/dfsruntime (en principio /opt está vacío.)
  4. Para comprobar el Live CD sin reiniciar usaremos Qemu:
    # qemu -boot c -cdrom image.iso

Crear un Live CD con bootcd

Al igual que mklivecd, bootcd (paquete bootcd) nos permite crear un Running Debian Live CD, un Live CD que contiene una copia exacta de nuestra máquina.

El proceso a seguir es el siguiente:

  1. el archivo de configuración es /etc/bootcd/bootcdwrite.conf. Especificaremos los directorios que no se incluirán en el Live CD (no se puede excluir /home):
    NOT_TO_CD="/home/francis /home/qemu /home/misc /home/mp3"
  2. para construir el Live CD ejecutaremos el comando:
    # bootcdwrite

    Si bootcd encuentra algún problema nos avisará y nos permitirá ignorarlo, continuar o cancelar. El problema más habitual es que el Live CD no quepa en un CD: para que nuestro sistema entre en un CD tendrá que ser realmente minimalista!

  3. Se generará el archivo /var/spool/bootcd/cdimage.iso, que contiene la imagen .iso del Live CD. Podemos montar este archivo y ver su contenido, ya que es la imagen de un sistema de ficheros:
    # mount -o loop /var/spool/bootcd/cdimage.iso /mnt
  4. Para comprobar el Live CD sin reiniciar usaremos Qemu:
    # qemu -boot c -cdrom /var/spool/bootcd/cdimage.iso

Crear un Live CD con mklivecd

Al igual que bootcd, mklivecd (mklivecd.sourceforge.net, paquete mklivecd) nos permite crear un Running Debian Live CD, un Live CD que contiene una copia exacta (snapshot) de nuestra máquina (configuraciones, aplicaciones, documentos, etc.).

Artículos en la categoría "Instalar software en Linux"

  1. Cómo trabajar con APT
  2. Fuentes de software
  3. Instalar paquetes no-Debian
  4. Construir un paquete Debian desde las fuentes
  5. Paquetes virtuales
  6. El sistema de alternativas
  7. Crear un Live CD en Linux

12 Comments:

  1. Muchas gracias por el artículo me es de gran utilidad.
    Un saludo.

  2. El live CD q se genera con este procedimiento es instalable? o es como los live cds actuales de Debian q no se pueden instalar?
    Muchas gracias al q responda!!! espero q me ayuden

  3. Hola por favor diganme como tengo que hacer el live cd, tengo que modificar el archivo de configuracion desde el principio?
    tengo que crear otro?
    nose, es que no lo entiendo, espero una respuesta gracias.

  4. carlos garia cañas

    Hola, tengo Windows XP y quiero formatear, ya que me desaparecio la unidad D de los CDs, no tengo CD de Windows y me han dicho de cambiarme a Linux que va mucho mejor.
    Si instalo esto me instalara el lector de los CDs tambien?
    Muchas gracias.

  5. Saludos, me gustaria saber qu’e procedimientos debo seguir para anadir a mi live CD algunos paquetes especificos (ejm Electronica, educativos, OpenOffice), Gracias

  6. hola amigo, soy estudiante de la upn-trujillo. estoy pensando crear un live cd dirigido para estudiantes del colegio. por favor te agradeceria si me apoyas en este proyecto si pudieras alcansarme herramaientas para la creacion de este y tu orientacion. gracias

  7. Hola amigos, soy estudiante de la carrera de ingenieria en computacion. Se me ocurrio crear una distribucion propia (que sea mia) diseñada bajo linux, ya tengo todos los paquetes q tengo que descomprimir.

    Me gustaria que si hay alguien que ya haya hecho una distribucion para que me pueda ayudar aterminar la mia y a la ves tambien quiero hacer un live cd de la misma distribucion.

    Espero me puedan ayudar… gracias

  8. Hola,
    Respondiendo a Gilberto:
    Primero tendrás que averiguar los nombres de los paquetes que vas a instalar con el comando: # apt-cache search nombre_del_programa
    Y segundo tendrás que editar el fichero: /etc/dfsbuild/dfs.cfg como se indica más arriba y añadir los nombres de los paquetes.

    Respondiendo a carlos garia:
    La unidad D te aparecerá en GNU/Linux si no se trata de un fallo de hardware, en caso contrario no podrás instalar GNU/Linux mediante un CD, y menos todavía Window$. Si utilizas el ordenador para lo básico es seguro que que te valla mejor que Window$, si vas ha hacer algo “extraño” ;-) tendrás que configurarlo pero al final también te irá mejor :D (Creo que se nota un poquillo cual es mi posición). Lo mejor es que le pidas a algún amigo tuyo que te lo instale y de paso te explique un poquillo como va todo (dependerá de tus conocimientos informáticos) y sino… ¡A la aventura!

    Espero haberos ayudado.

    Mi blog: gurudelinux.blogspot.com

  9. Hola a todos tengo un grave problema que no puedo solucionar y por mas que busco por la red nadie me da la solucion mi memoria usb de 4gb marca hp de un derepente ya no funciona. es decir la inserto en el puerto USB y la reconoce el windows xp como disco extraible y la lucecita se enciende normal y no se puede ni formatear con el hdd ni con el hp tools ni nada porq el windows lo reconoce pero los programas ya mencionados no pueden hacer nada que puedo hacer

  10. Para el de arriba, que use GParted… (está en livecd)

    He visto una errata en el texto: Aparece:
    # dfsbuild -c /etc/dfsbuild/dfs.cfg
    Y en realidad es (o a mí me sale que es en el man y si no, no me funciona):
    # dfsbuild -c /etc/dfsbuild/dfs.cfg -w
    Aunque quizás sea por un cambio de versión.

  11. Marcos Perdomo Morales

    hola me pregunto si luego de hacer la imagen la puedo instalar en otro ordenador tipo KNOPPIX

  12. Marcos Perdomo Morales

    se los agradezco de ante manos es que soy nuevo en este tema de linux