Manual de Live Systems

Sobre aquest manual

1. Sobre aquest manual

1.1 Per als impacients
1.2 Termes
1.3 Autors
1.4 Contribuir a aquest document
1.4.1 Aplicar canvis
1.4.2 Traducció

2. Sobre el Live Systems Project

2.1 Motivació
2.1.1 Què passa amb els sistemes vius actuals
2.1.2 Per què crear el nostre pròpi sistema viu?
2.2 Filosofia
2.2.1 Només paquets Debian sense modificacions de la secció "main"
2.2.2 Paquets del sistema viu sense cap configuració
2.3 Contacte

Usuari

3. Instal·lació

3.1 Requisits
3.2 Instal·lació de live-build
3.2.1 Des del repositori de Debian
3.2.2 A partir del codi font
3.2.3 A partir d'instantànies
3.3 Instal.lació de live-boot i live-config
3.3.1 Des del repositori de Debian
3.3.2 A partir del codi font
3.3.3 A partir d'instantànies

4. Conceptes bàsics

4.1 Què és un sistema viu?
4.2 Descàrrega d'imatges prefabricades
4.3 Ús del servei de construcció d'imatges en viu web
4.3.1 Ús i advertències sobre el servei web
4.4 Primers passos: construcció d'una imatge ISO híbrida
4.5 Usar una imatge ISO híbrida en viu
4.5.1 Gravar una imatge ISO en un medi físic
4.5.2 Còpiar una imatge ISO híbrida en un dispositiu USB
4.5.3 Utilitzar l'espai lliure en una memòria USB
4.5.4 Arrencar el medi en viu
4.6 Utilitzar una màquina virtual per a fer proves
4.6.1 Provar una imatge ISO amb QEMU
4.6.2 Provar una imatge ISO amb VirtualBox
4.7 Construir i utilitzar una imatge HDD
4.8 Construir una imatge netboot
4.8.1 Servidor DHCP
4.8.2 Servidor TFTP
4.8.3 Servidor NFS
4.8.4 Com provar l'arrencada en xarxa
4.8.5 Qemu

5. Descripció general de les eines

5.1 El paquet live-build
5.1.1 L'ordre lb config
5.1.2 L'ordre lb build
5.1.3 L'ordre lb clean
5.2 El paquet live-boot
5.3 El paquet live-config

6. Gestió d'una configuració

6.1 Gestionar canvis en la configuració
6.1.1 Per què utilitzar scripts auto? Què fan?
6.1.2 Utilitzar scripts auto d'exemple
6.2 Clonar una configuració publicada via Git

7. Visió general de la personalització

7.1 Configuració durant la construcció vs. durant l'arrencada
7.2 Etapes de la construcció
7.3 Suplementar lb config amb fitxers
7.4 Tasques de personalització

8. Personalització de la instal·lació de paquets

8.1 Fonts dels paquets
8.1.1 Distribució, àrees d'arxiu i mode
8.1.2 Miralls de distribució
8.1.3 Miralls de distribució utilitzats en temps de construcció
8.1.4 Miralls de distribució utilitzats en temps d'execució
8.1.5 Repositoris addicionals
8.2 Selecció dels paquets a instal·lar
8.2.1 Llistes de paquets
8.2.2 Ús dels metapaquets
8.2.3 Llistes locals de paquets
8.2.4 Llistes locals de paquets per a l'etapa binary
8.2.5 Generar llistes de paquets
8.2.6 Ús de condicionals dins de les llistes de paquets
8.2.7 Eliminar paquets durant la instal·lació
8.2.8 Tasques d'escriptori i llenguatge
8.2.9 Tipus i versió del nucli
8.2.10 Nuclis personalitzats
8.3 Instal·lació de paquets modificats o de tercers
8.3.1 Fer servir packages.chroot per a instaŀar paquets personalitzats
8.3.2 Fer servir un repositori APT per a instal·lar paquets personalitzats
8.3.3 Paquets personalitzats i APT
8.4 Configurar APT en temps de construcció
8.4.1 Elegir apt o aptitude
8.4.2 L'ús d'un proxy amb APT
8.4.3 Afinar APT per a estalviar espai
8.4.4 Passar opcions per a apt o aptitude
8.4.5 APT pinning

9. Personalització dels continguts

9.1 Includes
9.1.1 Live/chroot local includes
9.1.2 Binary local includes
9.2 Scripts ganxo (Hooks)
9.2.1 Live/chroot local hooks
9.2.2 Scripts ganxo durant l'arrencada
9.2.3 Binary local hooks
9.3 Preconfiguració de les preguntes de Debconf

10. Personalització dels comportaments en temps d'execució

10.1 Personalitzar l'usuari en viu
10.2 Personalització de l'entorn local i el llenguatge
10.3 Persistència
10.3.1 El fitxer persistence.conf
10.3.2 Utilitzar diversos medis persistents

11. Personalització de la imatge binària

11.1 Carregadors d'arrencada
11.2 metadades ISO

12. Personalització de l'instal·lador de debian

12.1 Tipus d'instal·lador de Debian
12.2 Personalització de l'instal·lador de Debian amb preconfiguració
12.3 Personalitzar el contingut de l'instal·lador de Debian

Projecte

13. Contribuir al projecte

13.1 Fer canvis

14. Informar dels errors

14.1 Problemes coneguts
14.2 Reconstruir des de zero
14.3 Fer servir paquets actualitzats
14.4 Recopilar informació
14.5 Aïllar el cas que falla, si és possible
14.6 Utilitzar el paquet correcte per a informar de l'error
14.6.1 A l'hora de construir mentre bootstrapping
14.6.2 A l'hora de construir, durant la instal·lació de paquets
14.6.3 En el moment d'arrencar
14.6.4 En temps d'execució
14.7 Fer la recerca
14.8 On informar dels errors

15. Estil de Codi

15.1 Compatibilitat
15.2 Indentació
15.3 Ajust de línia
15.4 Variables
15.5 Miscel·lània

16. Procediments

16.1 Publicacions majors
16.2 Publicacions puntuals
16.2.1 Ùltima publicació puntual d'una versió de Debian
16.2.2 Plantilla per a anunciar una publicació puntual

17. Repositoris Git

17.1 Gestió de múltiples repositoris

Exemples

18. Exemples

18.1 Ús dels exemples
18.2 Tutorial 1: Una imatge per defecte
18.3 Tutorial 2: Una utilitat de navegador web
18.4 Tutorial 3: Una imatge personalitzada
18.4.1 Primera revisió
18.4.2 Segona revisió
18.5 Un client per a un quiosc VNC
18.6 Una imatge bàsica per a un dispositiu USB de 128MB
18.7 Un escriptori GNOME localitzat i amb instal·lador

Apèndix

19. Guia d'estil

19.1 Instruccions per als autors
19.1.1 Característiques lingüístiques
19.1.2 Procediments
19.2 Directrius per als traductors
19.2.1 Consells de traducció

Metadata

Manual de Live Systems

Usuari

5. Descripció general de les eines

Aquest capítol conté un resum de les tres eines principals utilitzades en la construcció dels sistemes en viu: live-build, live-boot i live-config.

5.1 El paquet live-build

live-build és un conjunt de scripts per a crear sistemes en viu. Aquests scripts també s'anomenen «ordres».

La idea darrere de live-build és ser un marc que utilitza un directori de configuració per automatitzar completament i personalitzar tots els aspectes de la construcció d'una imatge en viu.

Molts conceptes són similars als utilitzats per a crear paquets Debian amb debhelper:

A diferència de debhelper, live-build conté una eina per a generar un directori de configuració en esquelet, lb config. Això podria ser considerat similar a eines com ara dh-make. Per a obtenir més informació sobre lb config, veure L'ordre lb config.

La resta d'aquesta secció descriu les tres ordres més importants:

5.1.1 L'ordre lb config

Com s'ha dit a live-build, les seqüències d'ordres que formen part de live-build llegeixen la seva configuració amb l'ordre source d'un únic directori anomenat config/. Com la construcció d'aquest directori a mà, seria molt costós i propens a errors, es pot utilitzar l'ordre lb config per a crear carpetes de configuració en esquelet.

Executar lb config sense arguments crea un subdirectori config/ que s'omple amb alguns paràmetres per defecte, i un arbre en esquelet de subdirectoris auto/.

$ lb config
[2013-01-01 09:14:22] lb_config
P: Considering defaults defined in /etc/live/build.conf
P: Creating config tree for a debian/i386 system

Utilitzar lb config sense cap tipus d'arguments seria convenient per als usuaris que necessiten una imatge molt bàsica, o que tinguin la intenció de proporcionar una configuració més completa més tard mitjançant auto/config (Veure Gestió d'una configuració per més detalls).

Normalment, s'haurà d'especificar algunes opcions. Per exemple, per a especificar quina distribució es vol construir mitjançant el seu nom en clau:

$ lb config --distribution sid

És possible especificar diverses opcions, com ara:

$ lb config --binary-images netboot --bootappend-live "boot=live components hostname=live-host username=live-user" ...

Una llista completa d'opcions està disponible a la pàgina del manual lb_config.

5.1.2 L'ordre lb build

L'ordre lb build llegeix la configuració del directori config/. A continuació, executa les ordres de nivell inferior necessàries per a construir el sistema en viu.

5.1.3 L'ordre lb clean

L'ordre lb clean s'encarrega d'eliminar diverses parts d'una construcció per a que altres construccions posteriors puguin començar des d'un estat net. Per defecte, es netegen les etapes chroot, binary i source, però la caché es manté intacta. A més, es poden netejar etapes individuals. Per exemple, si s'han fet canvis que només afecten a la fase binary, utilitzar lb clean --binary abans de construir un nou binary. Si els canvis modifiquen el bootstrap i/o la caché de paquets, per exemple, canvis en les opcions --mode, --architecture o --bootstrap, s'ha d'utilitzar lb clean --purge. Veure la pàgina del manual de lb_clean per a una llista completa d'opcions.

5.2 El paquet live-boot

live-boot és un conjunt de scripts per a proporcionar hooks a initramfs-tools, que s'utilitzen per a generar un initramfs capaç d'arrencar sistemes vius, com ara els creats per live-build. Això inclou les ISOs dels sistemes en viu, netboot tarballs i imatges per a memòries USB.

En el moment d'arrencar, buscarà medis de només lectura que continguin un directori /live/ on s'emmagatzema un sistema de fitxers arrel (sovint una imatge de un sistema de fitxers comprimit squashfs). Si el troba, crearà un entorn d'escriptura, utilitzant aufs, per a que puguin arrencar sistemes com Debian o similars.

Més informació sobre ramfs inicial a Debian es pot trobar al Debian Linux Kernel Handbook ‹http://kernel-handbook.alioth.debian.org/› al capítol sobre initramfs.

5.3 El paquet live-config

live-config consta dels scripts que s'executen durant l'arrencada després de live-boot per a configurar el sistema en viu de forma automàtica. S'ocupa de tasques com ara l'establiment de les locales, el nom d'amfitrió, la zona horària, crear l'usuari en viu, l'inhibició de tasques de cron i l'inici automàtic de sessió per a l'usuari en viu.