Manual de Live Systems

Descripció general de les eines

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.

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:

●  Els scripts tenen una ubicació central per a la configuració del seu funcionament. Amb debhelper aquest és el subdirectori debian/ d'un arbre de paquets. Per exemple, dh_install buscarà, entre altres, un fitxer anomenat debian/install per a determinar quins fitxers han d'existir en un paquet binari en particular. De la mateixa manera, live-build emmagatzema la seva configuració per complet sota un subdirectori config/.

●  Els scripts són independents - és a dir, sempre és segur executar cada ordre.

A diferència de debhelper, live-build proporciona les eines per a generar un directori de configuració en esquelet. Això podria ser considerat similar a eines com ara dh-make. Per a més informació sobre aquestes eines, seguiu llegint, ja que la resta d'aquesta secció discuteix les quatre ordres més importants. Tenir en compte que van precedices de lb que és una funció genèrica per a les ordres de live-build.

●  lb config: Responsable d'inicialitzar un directori de configuració per al sistema en viu. Consultar L'ordre lb config per a més informació.

●  lb build: Responsable d'iniciar la creació d'un sistema en viu. Consultar L'ordre lb build per a més informació.

●  lb clean: Responsable d'eliminar parts de la construcció d'un sistema viu. Consultar L'ordre lb clean per a més informació.

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 l'arbre inicial de configuració en esquelet.

Executar lb config sense arguments crea el subdirectori config/ que s'omple amb alguns paràmetres per defecte en fitxers de configuració, i dos arbres de subdirectoris en esquelet que s'anomenen auto/ i local/.

 $ lb config
 [2015-01-06 19:25:58] lb config
 P: Creating config tree for a debian/stretch/i386 system
 P: Symlinking hooks...  

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 a més detalls).

Normalment, s'haurà d'especificar algunes opcions. Per exemple, per a especificar quin gestor de paquets utilitzar durant la construcció de la imatge:

 $ lb config --apt aptitude  

É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.

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.

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.

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.

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.



License: Aquest programa és un programari lliure: es pot redistribuir i/o modificar sota els termes de la Llicència Pública General de la GNU com és publicada per la Free Software Foundation, ja sigui la versió 3 de la Llicència, o (si ho preferiu) qualsevol versió posterior.

Aquest programa es distribueix amb l'esperança que sigui útil, però sense cap garantia, fins i tot sense la garantia implícita de COMERCIALITZACIÓ o ADEQUACIÓ PER A PROPÒSITS DETERMINATS. Vegeu la Llicència General Pública de la GNU per a més detalls.

Haurieu de rebre una còpia de la Llicència Pública General de la GNU amb aquest programa. Si no és així, consulteu http://www.gnu.org/licenses/.

El text complet de la Llicència Pública General de la GNU es pot trobar a /usr/share/common-licenses/GPL-3.


SiSU Spine (object numbering & object search) 2022