Debian -->
[ document manifest ]
<< previous TOC next >>
< ^ >

Manual Debian Live

Usuario

9. Personalización de contenidos

Este capítulo trata, no solamente de una mera descripción de cómo seleccionar los paquetes a incluir en el sistema en vivo, sino que además presenta cómo hacer el «ajuste fino» de la personalización de los contenidos del propio sistema. Los «añadidos» (includes) permiten adjuntar o reemplazar cualquier fichero en la imagen Debian Live a crear, los scripts gancho (hooks) permiten ejecutar cualquier orden en las diferentes etapas de creación y en el momento del arranque y por último, la preconfiguración permite configurar paquetes cuando son instalados, suministrando las respuestas a las preguntas de debconf.

9.1 Includes

Idealmente, un sistema Debain Live debería incluir solamente ficheros que son obtenidos de paquetes Debian no modificados. Sin embargo, algunas veces es conveniente incluir o modificar algún contenido mediante ficheros. La utilización de «añadidos» (includes) posibilita la inclusión, modificación o cambio de cualquier fichero en la imagen Debian Live a crear. live-build tiene tres mecanismos:

  • Includes locales en chroot : Estos includes permiten incluir o reemplazar ficheros del entorno chroot. Para más información ver Includes locales en Live/chroot
  • Includes locales en Binary: Estos includes permiten incluir o reemplazar ficheros en la propia imagen binaria generada. Para más información ver Includes locales en Binary
  • Includes en Binary: Estos includes permiten incluir o reemplazar ficheros específicos de Debian en la imagen binaria, como pueden ser plantillas o directorios de herramientas. Para más información ver Includes en Binary
  • Para más infomación acerca de la diferencia entre las imágenes "Live" y "binary" ver Términos

    9.1.1 Includes locales en Live/chroot

    Los includes locales en chroot se utilizan para incluir o reemplazar ficheros en el sistema de ficheros Live/chroot de manera que puedan ser utilizados en el sistema en vivo. Una utilización típica de estos Includes puede ser el rellenar el directorio (/etc/skel) del sistema en vivo para que sea utilizado en la creación del directorio home al dar de alta usuarios en el sistema en vivo. Otra utilización típica es suministrar ficheros de configuración que puedan ser incluidos o reemplazados en la imagen sin necesidad de realizar proceso alguno (Los ficheros son simplemente copiados sin realizar ningún proceso de los mismos para adecuarlos al sistema concreto. N. del T); Si se necesita realizar algún procesado de estos ficheros ver la sección Scripts gancho locales en Live/chroot

    Para incluir ficheros solamente hace falta añadirlos al directorio de configuración config/includes.chroot. Habrá una relación directa entre este directorio y el directorio raiz (/) del sistema en vivo. Por ejemplo, si se desea añadir un fichero para que sea el fichero /var/www/index.html del sistema en vivo se puede hacer lo siguiente:

    $ mkdir -p config/includes.chroot/var/www
    $ cp /path/to/my/index.html config/includes.chroot/var/www

    El directorio de configuración presentará la siguiente jerarquía:

    -- config
        [...]
         |-- includes.chroot
         |   `-- var
         |       `-- www
         |           `-- index.html
        [...]
         `-- templates

    Los includes locales en chroot serán instalados después de la instalación de los paquetes de manera que los includes sobreescribirán cualquier fichero que los paquetes puedan haber instalado.

    9.1.2 Includes locales en Binary

    Se puede incluir material como documentación, videos, etc en el sistema de ficheros del medio de instalación (USB, CDROM, etc) donde se grabará la imagen de manera que sea accesible nada más insertar el medio sin necesidad de arrancar el sistema en vivo. Para esto se utilizan los includes locales en Binary. Funciona de manera similar a los includes locales en chroot comentados anteriormente. Por ejemplo, supongamos que en el medio de instalación se desea añadir unos ficheros con videos de demostración ~/video_demo.* sobre el funcionamiento del sistema en vivo de manera que el usuario pueda acceder a ellos a través de la página de indice HTML. Simplemente se debe copiar el material en config/includes.binary/ de la siguiente manera:

    $ cp ~/video_demo.* config/includes.binary/

    Los ficheros aparecerán en el directorio raiz del medio desde el que se instalará el sistema en vivo.

    9.1.3 Includes en Binary

    live-build tiene algún fichero estandar, como puede ser la documentación, que se incluyen por defecto en el medio de instalación. Esto puede ser desactivado con:

    $ lb config --includes none

    Si no se utiliza esta opción, live-build instalará el material en el directorio /includes/ del sistema de ficheros del medio de instalación por defecto. En lugar de none, se puede especificar un directorio alternativo mediante la misma opción --includes.

    9.2 Scripts gancho (Hooks)

    Los scripts gancho permiten ejecutar órdenes para personalizar la imagen en las etapas chroot y binary.

    9.2.1 Scripts gancho locales en Live/chroot

    Para ejecutar órdenes en la etapa chroot se deben crear scripts gancho (hooks) con el sufijo .chroot que contengan dichas ordenes a ejecutar y depositarlos en el directorio config/hooks/. Estos scripts serán ejecutados en el entorno del chroot después de que el resto de las tareas de preparación del chroot han sido realizadas. Se debe asegurar que previamente se han instalado en el entorno chroot cualquier paquete, fichero u órden que necesiten los scripts gancho. El paquete live-build instala en el directorio /usr/share/live/build/examples/hooks del sistema huésped unos cuantos scripts gancho para realizar tareas habituales de personalización del entorno chroot que pueden ser copiados o referenciados mediante enlace simbólico en la propia configuración.

    9.2.2 Scripts gancho en tiempo de arranque

    Para ejecutar ordenes en el arranque del sistema en vivo, se puede suministrar scripts gancho a live-config depositándolos en el directorio config/includes.chroot/lib/live/config/, tal y como se explica en la sección de "Personalización" de la página de manual de live-config. Es interesante examinar los scripts gancho que trae de serie live-config que pueden verse en /lib/live/config/ y fijarse en la secuencia de números. Cuando se vaya a utilizar scripts propios deben ser prefijados con un número para indicar el orden de ejecución. Otra posibilidad es utilizar un paquete personalizado tal y como se describe en Instalar paquetes de terceros o paquetes modificados.

    9.2.3 Scripts gancho locales en Binary

    Para ejecutar comandos en la etapa Binary se deben crear scripts gancho con el sufijo .binary que contengan las ordenes y depositarlos en el directorio config/hooks/. Los scripts gancho se ejecutarán después de finalizar el resto de procesos de la etapa pero antes de crear los checksum con binary_checksum que es el último proceso que se ejecuta en esta etapa. Los scripts gancho no se ejecutan en el entorno del chroot, así que hay que tener cuidado de no modificar cualquier fichero fuera del árbol de creación, o se dañará el sistema de creación. En /usr/share/live/build/examples/hooks se pueden ver varios ejemplos de scripts gancho genéricos que permiten tareas de personalización para la etapa Binary. Estos scripts pueden ser utilizados en la propia configuración copiándolos o creando enlaces simbólicos.

    9.3 Preconfiguración de las preguntas de Debconf

    Los ficheros del directorio config/preseed/ con el sufijo .preseed seguido por la etapa (.chroot o .binary) son ficheros de preconfiguración para debconf. live-build instalará estos ficheros mediante debconf-set-selections durante la etapa correspondiente.

    Ver debconf(7) en el paquete debconf para obtener más información acerca de debconf.


    [ document manifest ]
    << previous TOC next >>
    < ^ >