aboutsummaryrefslogtreecommitdiffhomepage
path: root/markup/pod/live-manual/media/text/es/user_customization-contents.ssi
blob: c86549b3329e6d0c1ccbfb267e4f623e3cbdac5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
:B~ Personalización de contenidos

1~customizing-contents 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 «includes» permiten adjuntar o reemplazar cualquier
fichero en la imagen en vivo 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.

2~includes Includes

Idealmente, un sistema en vivo debería incluir solamente los ficheros
proporcionados por los paquetes sin modificar. Sin embargo, algunas veces es
conveniente incluir o modificar algún contenido mediante ficheros. La
utilización de includes posibilita la inclusión, modificación o cambio de
cualquier fichero en la imagen en vivo a crear. live-build utiliza dos
mecanismos:

_* Includes locales en chroot : Estos includes permiten incluir o reemplazar
ficheros en el sistema de ficheros chroot. Para más información ver
{Includes locales en Live/chroot}#live-chroot-local-includes

_* 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}#binary-local-includes

Para más infomación acerca de la diferencia entre las imágenes "Live" y
"binary" ver {Términos}#terms 

3~live-chroot-local-includes 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 rellenar el directorio (#{/etc/skel}#) usado por el sistema Live
para crear el directorio home del usuario. Otra utilización típica es
suministrar ficheros de configuración que pueden ser incluidos o
reemplazados en la imagen sin necesidad de realizar procesado alguno; Si se
necesita realizar algún procesado de estos ficheros ver la sección {Scripts
gancho locales en Live/chroot}#live-chroot-local-hooks

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 raíz #{/}# 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:

code{

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

}code

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

code{

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

}code

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.

3~binary-local-includes Includes locales en Binary 

Se puede incluir material como documentación, videos, etc en el sistema de
ficheros del medio (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:

code{

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

}code

Los ficheros aparecerán ahora en el directorio raíz del medio en vivo.

2~hooks Scripts gancho (Hooks)

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

3~live-chroot-local-hooks Scripts gancho locales en Live/chroot

Para ejecutar órdenes en la etapa chroot se deben crear scripts gancho
(hooks) con el sufijo #{.hook.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/doc/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.

3~boot-time-hooks 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
modificados o de terceros}#installing-modified-or-third-party-packages.

3~ Scripts gancho locales en Binary

Para ejecutar comandos en la etapa Binary se deben crear scripts gancho con
el sufijo #{.hook.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/doc/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.

2~ Preconfiguración de las preguntas de Debconf

Los ficheros del directorio #{config/preseed/}# con el sufijo #{.cfg}#
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.