Imprimir

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.

Veamos cómo crear nuestro propio live-CD. Disponemos de varias herramientas:

  • 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
  • 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 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
  • mklivecd (mklivecd.sourceforge.net, paquete mklivecd): al igual que bootcd, 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.).

10 Comentarios en “Crear un live-CD en Linux”

  • Packo dice:

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

  • Pablo dice:

    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

  • Jordi dice:

    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.

  • carlos garia cañas dice:

    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.

  • Gilberto dice:

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

  • juan luis dice:

    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

  • 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

  • Miguel dice:

    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

  • Alex dice:

    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

  • warcry dice:

    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.

Deja un comentario