Lihuen
RSSRSS AtomAtom

Diferencia entre revisiones de «Modificando debian-installer»

Línea 10: Línea 10:
 
==Instalar dependencias incumplidas de ''debian-installer''==
 
==Instalar dependencias incumplidas de ''debian-installer''==
 
Antes que nada, para poder usar ''debian-installer'' sin conflictos, debemos correrlo desde un sistema que use repositorios inestables, como lo es ''sid''.
 
Antes que nada, para poder usar ''debian-installer'' sin conflictos, debemos correrlo desde un sistema que use repositorios inestables, como lo es ''sid''.
 
+
Debemos utilizar 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 de nuestro paquete. Luego mostrará en pantalla las dependencias incumplidas.
Debemos utilizar el comando ''dpkg-checkbuilddeps'' en el directorio raíz de ''debian-installer''. Esto comprobará los paquetes instalados en el sistema con una lista de dependencias de nuestro paquete. Luego mostrará en pantalla las dependencias incumplidas.
+
 
La lista de dependencias de ''debian-installer'' se encuentra por defecto en ''debian/control'', pero también es posible especificar otra lista mediante su path. Para más información, usar ''man dpkg-checkbuilddeps''.
 
La lista de dependencias de ''debian-installer'' se encuentra por defecto en ''debian/control'', pero también es posible especificar otra lista mediante su path. Para más información, usar ''man dpkg-checkbuilddeps''.
 
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''.
 
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. Simplemente hay que correr el comando ''dpkg-buildpackage'' en el directorio raiz del instalador. Este proceso puede tardar varios minutos, dependiendo de la conexión a Internet.
 
Lo que resta ahora es completar el paquete ''debian-installer'' con los udebs requeridos para cada imagen. Simplemente hay que correr el comando ''dpkg-buildpackage'' en el directorio raiz del instalador. Este proceso puede tardar varios minutos, dependiendo de la conexión a Internet.
  
Línea 26: Línea 24:
 
Una vez finalizado el proceso, la imagen será generada en el directorio ''build/dest''.
 
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 excepiones son las imágenes CD/DVD, que solo contendran 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.
 
La mayoría de las imágenes creadas por ''debian-installer'' están listas para ser usadas. Las excepiones son las imágenes CD/DVD, que solo contendran 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.
 +
 +
==Automatización de ''debian-installer''==
 +
 +
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.
 +
 +
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.
 +
 +
El método que explicaremos a continuación se basa en modificar el ''initrd''.

Revisión de 16:24 3 jul 2008

Como su nombre lo indica, debian-installer es el instalador de Debian. Usualmente se pueden presentar situaciones en las que sea necesario modificar el paquete, como es el caso de Lihuen, para adaptarlo a diferentes usos y necesidades. En cualquier caso, debemos seguir los siguientes pasos para lograr que la creación de la imagen ocurra con éxito:

- Instalar dependencias incumplidas de debian-installer.

- Configurar repositorios personalizados.

- Generar la imagen

Instalar dependencias incumplidas de debian-installer

Antes que nada, para poder usar debian-installer sin conflictos, debemos correrlo desde un sistema que use repositorios inestables, como lo es sid. Debemos utilizar 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 de nuestro paquete. Luego mostrará en pantalla las dependencias incumplidas. La lista de dependencias de debian-installer se encuentra por defecto en debian/control, pero también es posible especificar otra lista mediante su path. Para más información, usar man dpkg-checkbuilddeps. 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. Simplemente hay que correr el comando dpkg-buildpackage en el directorio raiz del instalador. Este proceso puede tardar varios minutos, dependiendo de la conexión a Internet.

Configurar repositorios personalizados

Cuando compilemos nuestra imagen, por defecto debian-installer generará un archivo sources.list.udeb, el cual estará basado en el sources.list de nuestro sistema. Si nuestra intención es generar una imagen con una versión diferente a la instalada, es posible especificar los repositorios de donde se desea descargar los paquetes. Para ello tendremos que crear un archivo sources.list.udeb.local en el directorio build/. Vale aclarar que, aunque hayamos creado el sources.list.udeb.local, cuando generemos la imagen el archivo sources.list.udeb igualmente será creado, pero no utilizado.

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 excepiones son las imágenes CD/DVD, que solo contendran 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.

Automatización de debian-installer

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.

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.

El método que explicaremos a continuación se basa en modificar el initrd.