:B~ Descripció general de les eines 1~overview-of-tools 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. 2~live-build 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}#lb-config per a més informació. _* *{lb build}*: Responsable d'iniciar la creació d'un sistema en viu. Consultar {L'ordre lb build}#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}#lb-clean per a més informació. 3~lb-config L'ordre #{lb config}# Com s'ha dit a {live-build}#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/}#. code{ $ lb config [2015-01-06 19:25:58] lb config P: Creating config tree for a debian/stretch/i386 system P: Symlinking hooks... }code 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ó}#managing-a-configuration 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: code{ $ lb config --apt aptitude }code És possible especificar diverses opcions, com ara: code{ $ lb config --binary-images netboot --bootappend-live "boot=live components hostname=live-host username=live-user" ... }code Una llista completa d'opcions està disponible a la pàgina del manual #{lb_config}#. 3~lb-build 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. 3~lb-clean 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. 2~live-boot 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. 2~live-config 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.