Live manual Debian Live

# Debian Live Manual

# Personalització dels continguts

521

# 9. Personalització dels continguts

522

Aquest capítol tracta d'afinar la personalització dels continguts del sistema en viu més enllà de simplement triar els paquets que es desitja incloure. Els «includes» permeten afegir o reemplaçar fitxers arbitraris en la imatge en viu, els scripts ganxo (hooks) permeten executar ordres arbitràries en diferents etapes de la construcció i en el moment d'arrencar, i la preconfiguració (preseeding) permet configurar els paquets quan s'instal·len proporcionant respostes a les preguntes de debconf .

523

9.1 Includes

524

Tot i que l'ideal seria un sistema en viu que inclogués només fitxers proporcionats per paquets Debian sense modificació, de vegades és convenient proporcionar o modificar part del contingut a través de fitxers. Amb els includes, és possible afegir (o substituir) fitxers arbitraris en la imatge en viu. live-build ofereix dos mecanismes per al seu ús:

525

- Chroot local includes: Aquests permeten afegir o substituir fitxers dintre de chroot/Live en el sistema de fitxers. Consultar Live/chroot local includes per a més informació.

526

- Binary local includes: Aquests permeten afegir o substituir fitxers dins la imatge binària. Consultar Binary local includes per a més informació.

527

Consultar Termes per a més informació sobre la distinció entre les imatges "Live" and "binary".

528

9.1.1 Live/chroot local includes

529

Es poden utilitzar els chroot local includes per a afegir o reemplaçar fitxers en el sistema de fitxers chroot/Live perquè puguin ser utilitzats en el sistema en viu. Un ús típic és per a omplir l'esquelet del directori de l'usuari (`/etc/skel`) utilitzat pel sistema en viu per a crear el directori home de l'usuari en viu. Un altre és el de subministrar fitxers de configuració que poden ser simplement afegits o reemplaçats en la imatge sense processar; veure Chroot local hooks si es necessita processar-los.

530

Per a incloure fitxers, només s'han d'afegir al directori `config/includes.chroot`. Aquest directori es correspon amb el directori arrel `/` del sistema en viu. Per exemple, per a afegir un fitxer `/var/www/index.html` en el sistema en viu, fer:

531

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

532

La configuració tindrà llavors l'estructura següent:

533

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

534

Els chroot local includes s'instal·len després de la instal·lació del paquets de tal manera que es sobreescriuen els fitxers instal·lats pels paquets.

535

9.1.2 Binary local includes

536

Per a incloure material com documentació o vídeos en el sistema de fitxers del medi en viu de manera que sigui accessible immediatament després de la inserció del medi sense haver de arrencar el sistema en viu, es pot utilitzar els binary local includes. Això funciona de manera similar als chroot local includes. Per exemple, si els fitxers `~/video_demo.*` són vídeos de demostració del sistema en viu descrits i lligats per una pàgina d'índex HTML. Només cal copiar el material a `config/includes.binary/` de la següent manera:

537

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

538

Aquests fitxers apareixeran ara en el directori arrel del medi en viu.

539

9.2 Scripts ganxo (Hooks)

540

Els scripts ganxo permeten executar ordres en les etapes de la construcció chroot i binary per tal de personalitzar la imatge. Depenent de si es vol construir una imatge en viu o una d'un sistema normal s'han de col·locar els ganxos a `config/hooks/live` o `config/hooks/normal` respectivament. Aquests ganxos s'anomenen amb freqüència "ganxos locals", ja que s'executen dins de l'entorn de construcció.

541

També hi ha ganxos en temps d'arrencada que permeten executar ordres una vegada que la imatge ja s'ha construït, durant el procés d'arrencada.

542

9.2.1 Chroot local hooks

543

Per a executar ordres durant l'etapa chroot, crear un script ganxo que contingui les ordres amb el sufix `.hook.chroot` i afegir-lo bé al directori `config/hooks/live` o a `config/hooks/normal`. El ganxo s'executarà en el chroot després que la resta de la configuració del chroot s'hagi aplicat, assegurar-se que la configuració inclou tots els paquets i els fitxers que el ganxo necessita per a funcionar. Veure els scripts chroot d'exemple per a diverses tasques comunes de personalització que es poden trobar a `/usr/share/doc/live-build/examples/hooks` que es poden copiar o fer un enllaç simbòlic per a utilitzar-los en la pròpia configuració.

544

9.2.2 Binary local hooks

545

Per a executar ordres durant l'etapa binary, crear un script ganxo que contingui les ordres amb un sufix `.hook.binary` i afegir-lo bé al directori `config/hooks/live` o a `config/hooks/normal`. El ganxo s'executarà després que s'executin totes les ordres de l'etapa binary però abans dels binary_checksums, la darrera ordre de l'etapa binary. Les ordres del ganxo no s'executen al chroot, per tant tenir cura de no modificar cap fitxer de fora del arbre de construcció, o es pot fer malbé el sistema de construcció! Veure els scripts ganxo binary d'exemple per a diverses tasques comunes de personalització a `/usr/share/doc/live-build/examples/hooks` que es poden copiar o fer un enllaç simbòlic per a utilitzar-los en la pròpia configuració.

546

9.2.3 Scripts ganxo en temps d'arrencada

547

Per a executar ordres durant l'arrencada, es pot proporcionar scripts ganxo per a live-config com s'explica a la secció "Personalització" de la seva pàgina del manual. Es poden afegir els ganxos de live-config a `/lib/live/config/`, tenint en compte la seqüència dels números. A continuació, afegir el script ganxo propi amb un número de seqüència apropiat com a prefix, ja sigui com a un chroot local include a `config/includes.chroot/lib/live/config/`, o com un paquet personalitzat com es va discutir a Instal·lació de paquets modificats o de tercers.

548

9.3 Preconfiguració de les preguntes de Debconf

549

Els fitxers del directory `config/preseed/` amb el sufix `.cfg` seguits del sufix de l'etapa (`.chroot` o `.binary`) son considerats fitxers de preconfiguració de debconf i són instal·lats per live-build utilitzant `debconf-set-selections` durant l'etapa corresponent.

550

Per a més informació sobre debconf, veure `debconf(7)` del paquet debconf.