Arma tu distro

Mi primera incursión en el remix de una distribución de linux fue con el LiveCD de slax, en ese entonces usaba slackware como mi distro de escritorio así que tenía la sarten por el mango.

El problema con slax era que estaba diseñado para ser usado como LiveCD y no tenia forma “fácil” de instalarse. De ahí que me ví en la busqueda de nuevas formas de personalizar una distro a mi gusto.

Remastersys

Una de las herramientas mas prometedoras que hay para personalizar una distro es “Remastersys”, el cual en su interface permite crear una distro a partir del sistema operativo en el que se encuentra instalado, y puede sacar varias versiones, una del sistema operativo solo, y otra del sistema operativo con las configuraciones de usuarios y datos de los mismos; lo cual lo hace una excelente herramienta de backup.

Para empezar a usar “Remastersys”, debemos configurar el repositorio del paquete para nuestra distribución. De la experiencia que tengo con esta herramienta, me funcionó muy bien con distribuciones basadas en ubuntu hasta la 10.04 LTS, o Linux Mint 9.

Debemos agregar a nuestra lista de repositorios la siguiente linea:

deb http://www.geekconnection.org/remastersys/repository karmic/

Y luego actualizar e instalar el paquete:

sudo apt-get update
sudo apt-get install remastersys

Con esto ya podemos empezara usarlo, ejecutando como root el comando de la interfaz grafica de la herramienta

sudo remastersys-gui

La opcion de creación de la imagen que buscan es “Dist” ya que crea la imagen de sistema operativo en el que se encuentra instalado, sin datos de usuarios.

Yo personalmente, para mantener el orden, siempre instalo una maquina virtual, y en ella personalizo todo lo que necesito (y lo documento tambien), y creo la imágen de la maquina virtual sin afectar a mi sistema operativo del día a día.

MintConstructor

Otra opción interesante disponible para Linux Mint es la herramienta “mintconstructor” que es una version para la distro de la herramienta “reconstructor”. Es mucho mas simple, y no tan customizable como “Remastersys” pero es muy pontente cuando se conoce como funciona el sistema operativo.

Funciona desempaquetando una imagen iso previa en un directorio del nuestro sistema actual, y luego nos crea una terminal en jaula (chroot terminal) en ese directorio, donde podemos customizar la distro a nuestro gusto.

Para poder customizar la distro, es necesario conocer los comandos de instalacion de software y la personalización que requiere, todo desde la linea de comandos, con esta herramienta no hay ventanas con la cuales trabajar.

sudo apt-get install minconstructor
sudo /usr/lib/linuxmint/mintConstructor/mintConstructor.py

Yo personalmente me he encontrado con un problema en la creación de la distro usando el “mintconstructor” en el cual en el proceso de creación no me crea el archivo .iso, pero si estan creados todos los demas archivos, asi que busque cual es el comando que utiliza y lo corrí de forma manual y me crea la imagen sin problemas.

Asumiendo haya usado el directorio /var/cache/livecd, debo ir al mismo y ejecutar el comando como sigue:

cd /var/cache/livecd
sudo genisoimage -o ./livecd.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "LiveCD" -cache-inodes -r -J -l ./remaster/

Esto me devolverá un archivo /var/cache/livecd/livecd.iso que ya esta listo para probarse

En que situación querrian crear su propia distribución?

Mantener una distribución es un trabajo muy complicado, lo ideal es siempre trabajar sobre algo ya previamente probado, y hacer “tweaks” sobre eso.

En el caso mío, mas alla de las necesidades laborales, cree una versión de mi sistema operativo con ciertas modificaciones que necesitaba para usar mi modem 3g, que con las versiones de sistema que usaba siempre requerían de instalación de paquetes y modificación de archivos de configuración. Con la creación de mi remix, tenía todo lo que necesitaba en un LiveCD que podía correr en cualquier maquina.

Una nota sobre el uso del servidor SSH

Cuando el paquete openssh-server es instalado, se crean unos archivos de configuracion, estos archivos deberían ser unicos por cada maquina, pero si se usan en el contexto de un LiveCD y la instalación del mismo, el mismo archivo de configuración se copiará en todas las maquinas que instalemos.

Mi solución es eliminar esos archivos, y colocar un control en el inicio que los crea cada vez que bootea la maquina, siempre y cuando no existan.

Primero borramos los archivos.

rm /etc/ssh/ssh_host_{dsa,rsa}_key*

Luego en el archivo /etc/rc.local colocamos el siguiente codigo

if [ ! -e /etc/ssh/ssh_host_dsa_key ]
then
	dpkg-reconfigure openssh-server
fi

De esta forma, en cada inicio, se controla si existe el archivo, y si no existe hace una “reinstalación” rapida del paquete, que los crea nuevamente, unicos para cada inicio, y para cada maquina.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *