Lihuen
RSSRSS AtomAtom

¡Cómo hacer tu propia distro?

Edición del paquete

tasksel

Es un paquete que permite crear y personalizar el instalador de Debian.


Instalador modo gráfico de Debian-squeeze

Instalar los fuentes de debian-installer

Si usted no cuenta con los archivos fuentes del paquete, puede obterlos ejecutándo el siguiente comando:

 apt-get source debian-installer

Instalar dependencias incumplidas de debian-instal ler

IMPORTANTE:El paquete debian-installer debe compilarse bajo el mismo sistema que se pretende generar la imágen iso. Por ejemplo, si usted desea generar una imagen iso netboot,squeeze, debe tener instalado una distribución debian squeeze.

Para poder compilar el paquete debian-installer es necesario que instale sus dependencias. La lista de dependencias de debian-installer se encuentra por defectoen el archivo debian/control. Otra manera de obtener la lista de paquetes que se necesita, es ejecutando el comando:

 dpkg-checkbuilddeps

en el directorio raíz de debian-installer. Esto comprobará los paquetes instalados en el sistema con una lista de las dependencias del paquete. Luego se mostrará en pantalla las dependencias incumplidas.

Una vez obtenida la lista, se debe proceder a instalar los paquetes. Para hacerlo basta con correr el comando

 apt-get install <paquete1> <paquete2> <paquete3>

siendo paqueteX alguno de los paquetes mostrados en la lista que imprimió dpkg-checkbuilddeps. Lo que resta ahora es completar el paquete debian-installer con los udebs requeridos para cada imagen.

Personalizando el instalador

Configurar repositorios personalizados

Debian-installer necesita un repositorio de donde tomar los paquetes necesarios para la creaciòn de la iso.

Por defecto,debian-installer generará un archivo

 build/sources.list.udeb

basado en el archivo /etc/apt/sources.list' del sistema.

Si usted intención es generar una imagen con repositorios diferente a los que se encuentran en su sistema, es posible especificar los repositorios de donde se desea descargar los paquetes. Para ello tendremos que crear un archivo

build/sources.list.udeb.local

con la especificación del repositorio que desea. Poer ejemplo:

deb http://repo.lihuen.linti.unlp.edu.ar/debian squeeze  main/debian-installer

Agregar paquetes extras y/o personalizados al instalador

Debian-installer utiliza una seria de mini-paquetes (.udeb) que forman parte del instalador. Por ejemplo, para lograr que el instalador tome la apariencia de Lihuen durante la instalación, se configura y empaqueta el mini-paquete rootskel-gtk; y se agregan ntfs-modules-2.6.32-5-486-di_1.99_i386.udeb y ntfsprogs-udeb_2.0.0-1+b1_i386.udeb para posibilitar un particionado en particiones con formato ntfs.

Para tal fin existe la carpeta:

 build/localudebs/

Para que debian-installer agregue ésta personalización, es necesario agregarle el archivo "sources.listi.udeb.local" la dirección de la carpeta con los .udebs modificados

deb copy:/home/usuario/debian-installer-20110106/build/ localudebs/

Observaciones:

Aunque usted hayacreado el sources.list.udeb.local, cuando generemos la imagen el archivo sources.list.udeb igualmente será creado, pero no utilizado.

Creando nuestro preseed.cfg

Una excelente forma de automatizar debian-installer es usar la preconfiguración. La preconfiguración ofrece un mecanismo para responder a preguntas realizadas durante la instalación sin tener que introducir manualmente las respuestas mientras ésta se ejecuta. Esto hace posible que se automaticen la mayoría de las instalaciones e incluso ofrece funcionalidades que no están disponibles durante una instalación normal. Para ello se crea un archivo preseed.cfg, en el cual se incluirán todas las opciones a automatizar.

A pesar de que se puede generar un archivo preseed.cfg utilizando algunos comandos, es preferible crear uno desde el principio. De esta manera, la automatización de la instalación será totalmente personalizable. Empezaremos creando un archivo y llamándolo

 build/preseed.cfg 


Se pueden utilizar tres métodos de preconfiguración: modificando el initrd para que incluya el archivo preseed.cfg, llamando al archivo preseed.cfg especificando una ruta, o solicitando el archivo preseed.cfg vía red.


Nota: Se han seleccionado los parámetros más genéricos posibles para que la instalación sea util en cualquier computadora. Utilizar preseed.cfg nos permite automatizar muchas más cosas, como el particionamiento, configuración de las X, etc., pero para utilizarlos se recomienda tener conocimiento del hardware del equipo donde se va a realizar la instalación. Para más información, visite el sitio oficial.

Especificando una ruta para el archivo preseed.cfg

Este es el método mas sencillo, recomendado y utilizado por excelencia. Tendremos que editar el archivo de configuración ubicado en installer/build/config/common. En el ubicaremos la variable PRESEED y le especificaremos el directorio donde se encuentra nuestro archivo preseed.cfg. A manera de ejemplo:

PRESEED = /home/<user>/preseed.cfg

Tuneando el instalador

Es posible adaptar la parte "gráfica" del menú del instalador a nuestro gusto. Es decir, se pueden modificar las imágenes, colores, textos de ayuda, etc.

Menú del instalador de Debian-squeeze
Menú del instalador de Lihuen-squeeze


Estos archivos están ubicados en build/boot/x86/ En general, se van a encontrar archivos f*.txt, los cuales corresponden a los textos mostrados cuando se presiona algunas de las teclas F1 - F10; archivos *.cfg, que son configuraciones simples en las que dicen los archivos *.txt a incluir; y en el directorio build/boot/x86/pics/ se encuentran las imágenes mostradas por el instalador.

Generar la imagen

Una vez instaladas las dependencias y elegidos los repositorios deseados, lo que queda es generar la imagen. Para ello se debe tener en cuenta la arquitectura (i386, amd64,etc.) y el tipo (cdrom, netboot, floopy, etc.). Para obtener una lista de todas las posibles combinaciones de arquitecturas y tipos, basta con utilizar el comando

# make

en el directorio build/. Una vez elegidas las opciones, hay que generar la imagen usando uno de los build_targets (build-netboot, all_build, etc.). Una vez finalizado el proceso, la imagen será generada en el directorio build/dest. La mayoría de las imágenes creadas por debian-installer están listas para ser usadas. Las excepciones son las imágenes CD/DVD, que solo contendrán la base (initrd y kernel). El paquete usado para completar las imágenes CD/DVD es debian-cd. Aunque por otro lado, si lo que se desea es que la imagen solo tenga el instalador, se puede crear una imagen mini-ISO con solo el netboot initrd en ella. Por ejemplo, el comando

# make build_netboot

creará una imagen en build/dest/netboot/mini.iso, usando isolinux.

 Ante cualquier duda o inconveniente no dudes en visitar nuestros foros.
 http://lihuen.linti.unlp.edu.ar/foros

Es un paquete que permite la selección de tareas a instalar en el sistema Debian, durante o después de la instalación.

Tlihuen.jpg

Para descargar los fuentes del paquete

apt-get source tasksel

Crear una lista de tareas

Una "tarea" es una lista de nombres de paquetes que se pretende instalar en un sistema. Para crear una lista de tareas, debe crear un archivo nuevo con el nombre que desea asignarle a la nueva tarea en la carpeta:

tasksel-2.88//tasks/ 

En ésta carpeta encontrará una gran cantidad de listas de tareas. Borré todas las que considere innecesarias para su distribución.

Una tarea debe contar con los siguientes campos:

Task:nombre_de_la_tarea

Nombre con el que se va a mostrar la tarea en la lista de tareas. Debe estar escrito minúscula.

Relevance: un_valor

Valor de importancia que se le asigna a la tarea. Varía desde 0 a 10

Description: 

Una breve información sobre la tarea

Key:

Nombre de los paquetes que son elementales en la tarea. Si alguno de éstos paquetes no se encuentran en el CD/DVD de instalación, no se mostrará la tarea dentro de las opciones para instalar.

Packages: list

Lista de los nombres de los paquetes que formen la tarea. Ésta lista debe escribirse con un margen izquierdo de dos espacios en blanco.

Test-new-install: argumento_1 argumento_2

Puede recibir uno o dos parámetros. El argumento del primer parámetro se tiene en cuenta durante la instalación del sistema. el segundo parámetro se aplica cuando el usuario ejecuta tasksel con el sistema ya instalado.

Los valores posibles son:

install Instala la tarea automáticamente en el sistema aunque el usuario no la seleccione drante la instalación.

skip No visualiza la tarea entre la lista de opciones.

show: Muestra la tarea dentro de la lista de tareas. No es obligatorio. Pero es importante setearlo como segundo parámetro en el caso de que la tarea tenga la propiedad skip durante la instalación.

mark Muestra la tarea como "seleccionada" (con un tilde) durante la instalación del sistema.

Por ejemplo, en la tarea "gnome" del tasksel de lihuen, se configuró:

Test-new-install: mark show Lo que indica que la tarea se muestra como "marcada o seleccionada" durante la instalación, y se muestra dentro de la lista de tareas disponibles para instalar cuando el usuario ejecuta tasksel.

Otro ejemplo es la tarea "lihuen". Test-new-install: install skip Como ésta tarea contiene paquetes base para la instalación de Lihuen, no se presenta al usuario la posibilidad de selección. De manera que se instala automáticamente y su nombre no se muestra dentro de la lista de tareas a instalar.