diff options
Diffstat (limited to 'markup/pod/live-manual/media/text/es/examples.ssi')
| -rw-r--r-- | markup/pod/live-manual/media/text/es/examples.ssi | 456 |
1 files changed, 0 insertions, 456 deletions
diff --git a/markup/pod/live-manual/media/text/es/examples.ssi b/markup/pod/live-manual/media/text/es/examples.ssi deleted file mode 100644 index 450e5d6..0000000 --- a/markup/pod/live-manual/media/text/es/examples.ssi +++ /dev/null @@ -1,456 +0,0 @@ -:B~ Ejemplos - -1~examples Ejemplos - -Este capítulo ofrece ejemplos de creación de imágenes de sistemas en vivo -para casos de uso específicos. Si se es nuevo en la creación de una imagen -en vivo propia, se recomienda leer primero los tres tutoriales en secuencia, -ya que cada uno enseña nuevas técnicas que ayudan a utilizar y entender los -ejemplos restantes. - -2~using-the-examples Uso de los ejemplos - -Para poder seguir estos ejemplos es necesario un sistema donde crearlos que -cumpla con los requisitos enumerados en {Requisitos}#requirements y tener -live-build instalado tal y como se describe en {Instalación de -live-build}#installing-live-build. - -Hay que tener en cuenta que, para abreviar, en estos ejemplos no se -especifica una réplica local para la creación de la imagen. Es posible -acelerar las descargas considerablemente si se utiliza una réplica local. Se -puede especificar las opciones cuando se usa #{lb config}#, tal y como se -describe en {Réplicas de Distribution utilizadas durante la -creación}#distribution-mirrors-build-time, o para más comodidad, establecer -el valor por defecto para la creación del sistema en -#{/etc/live/build.conf}#. Basta con crear este fichero y en el mismo, -establecer las variables #{LB_MIRROR_*}# correspondientes a la réplica -preferida. Todas las demás réplicas usadas en el proceso de creación usarán -estos valores por defecto. Por ejemplo: - -code{ - - LB_MIRROR_BOOTSTRAP="http://mirror/debian/" - LB_MIRROR_CHROOT_SECURITY="http://mirror/debian-security/" - LB_MIRROR_CHROOT_BACKPORTS="http://mirror/debian-updates/" - -}code - -2~tutorial-1 Tutorial 1: Una imagen predeterminada - -*{Caso práctico:}* Crear una primera imagen sencilla, aprendiendo los fundamentos de live-build. - -En este tutorial, vamos a construir una imagen ISO híbrida por defecto que -contenga únicamente los paquetes base (sin Xorg) y algunos paquetes de -soporte, como un primer ejercicio en el uso de live-build. - -No puede ser más fácil que esto: - -code{ - - $ mkdir tutorial1 ; cd tutorial1 ; lb config - -}code - -Si se examina el contenido del directorio #{config/}# se verá almacenada -allí una configuración en esqueleto preparada para ser personalizada o en -este caso para ser usada inmediatamente para construir una imagen por -defecto. - -Ahora, como superusuario, crear la imagen, guardando un log con #{tee}# -mientras se crea. - -code{ - - # lb build 2>&1 | tee build.log - -}code - -Suponiendo que todo va bien, después de un rato, el directorio actual -contendrá #{live-image-i386.hybrid.iso}#. Esta imagen ISO híbrida se puede -arrancar directamente en una máquina virtual como se describe en {Probar una -imagen ISO con Qemu}#testing-iso-with-qemu y en {Probar una imagen ISO con -VirtualBox}#testing-iso-with-virtualbox o bien ser copiada a un medio óptico -como un dispositivo USB tal y como se describe en {Grabar una imagen ISO en -un medio físico}#burning-iso-image y {Copiar una imagen ISO híbrida en un -dispositivo USB}#copying-iso-hybrid-to-usb, respectivamente. - -2~tutorial-2 Tutorial 2: Una utilidad de navegador web - -*{Caso práctico:}* Crear una utilidad de navegador web, aprendiendo a aplicar personalizaciones. - -En este tutorial, se creará una imagen adecuada para su uso como utilidad de -navegador web, esto sirve como introducción a la personalización de las -imágenes de sistemas en vivo. - -code{ - - $ mkdir tutorial2 - $ cd tutorial2 - $ lb config - $ echo "task-lxde-desktop iceweasel" >> config/package-lists/my.list.chroot - -}code - -La elección de LXDE para este ejemplo refleja el deseo de ofrecer un entorno -de escritorio mínimo, ya que el enfoque de la imagen es el uso individual -que se tiene en mente, el navegador web. Se podría ir aún más lejos y -ofrecer una configuración por defecto para el navegador web en -#{config/includes.chroot/etc/iceweasel/profile/}#, o paquetes adicionales de -soporte para la visualización de diversos tipos de contenido web, pero se -deja esto como un ejercicio para el lector. - -Crear la imagen, de nuevo como superusuario, guardando un log como en el -{Tutorial 1}#tutorial-1: - -code{ - - # lb build 2>&1 | tee build.log - -}code - -De nuevo, verificar que la imagen está bien y probarla igual que en el -{Tutorial 1}#tutorial-1. - -2~tutorial-3 Tutorial 3: Una imagen personalizada - -*{Caso práctico:}* Crear un proyecto para conseguir una imagen personalizada, que contenga el software favorito para llevárselo en una memoria USB donde quiera que se vaya, y hacerlo evolucionar en revisiones sucesivas, tal y como vayan cambiando las necesidades y preferencias. - -Como nuestra imagen personalizada irá cambiando durante un número de -revisiones, si se quiere ir siguiendo esos cambios, probar nuevas cosas de -forma experimental y posiblemente volver atrás si no salen bien, se guardará -la configuración en el popular sistema de control de versiones -#{git}#. También se utilizarán las mejores prácticas de configuración -automática a través de scripts #{auto}# como se describe en {Gestionar una -configuración}#managing-a-configuration. - -3~ Primera revisión - -code{ - - $ mkdir -p tutorial3/auto - $ cp /usr/share/doc/live-build/examples/auto/* tutorial3/auto/ - $ cd tutorial3 - -}code - -Editar #{auto/config}# del siguiente modo: - -code{ - - #!/bin/sh - - lb config noauto \ - --architectures i386 \ - --linux-flavours 686-pae \ - "${@}" - -}code - -Ejecutar #{lb config}# para generar el árbol de configuración, utilizando el -script #{auto/config}# que justo se acaba de crear: - -code{ - - $ lb config - -}code - -Completar la lista de paquetes local: - -code{ - - $ echo "task-lxde-desktop iceweasel xchat" >> config/package-lists/my.list.chroot - -}code - -En primer lugar con #{--architectures i386}# se asegura de que en un sistema -de creación #{amd64}# se crea una versión de 32-bits adecuada para ser usada -en la mayoría de máquinas. En segundo lugar, se usa #{--linux-flavours -686-pae}# porque no se espera usar esta imagen en sistemas mucho más -viejos. En tercer lugar se elige el metapaquete /{lxde}/ para proporcionar -un escritorio mínimo. Y, por último, se añaden dos paquetes iniciales -favoritos: /{iceweasel}/ y /{xchat}/. - -Ahora, crear la imagen: - -code{ - - # lb build - -}code - -Tener en cuenta que a diferencia de los dos primeros tutoriales, ya no se -tiene que escribir #{2>&1 | tee build.log}# ya que esto se incluye ahora en -#{auto/build}#. - -Una vez que se ha probado la imagen (como en el {Tutorial 1}#tutorial-1) y -se ha asegurado de que funciona, es el momento de iniciar el repositorio -git, añadiendo sólo los scripts auto que se acaba de crear, y luego hacer el -primer commit: - -code{ - - $ git init - $ cp /usr/share/doc/live-build/examples/gitignore .gitignore - $ git add . - $ git commit -m "Initial import." - -}code - -3~ Segunda revisión - -En esta revisión, vamos a limpiar desde la primera creación, agregar el -paquete /{vlc}/ a nuestra configuración, crear de nuevo, probar y enviar los -cambios al git. - -El comando #{lb clean}# limpiará todos los ficheros generados en las -primeras creaciones a excepción del caché, lo cual ahorra tener que volver a -descargar de nuevo los paquetes. Esto asegura que el siguiente #{lb build}# -vuelva a ejecutar todas las fases para regenerar los ficheros de nuestra -nueva configuración. - -code{ - - # lb clean - -}code - -Añadir ahora el paquete /{vlc}/ a nuestra lista de paquetes local en -#{config/package-lists/my.list.chroot}#: - -code{ - - $ echo vlc >> config/package-lists/my.list.chroot - -}code - -Crear de nuevo: - -code{ - -# lb build - -}code - -Probar, y cuando se esté satisfecho, enviar la próxima revisión al git: - -code{ - - $ git commit -a -m "Adding vlc media player." - -}code - -Por supuesto, es posible hacer cambios más complicados en la configuración, -tal vez añadiendo ficheros en los subdirectorios de #{config/}#. Cuando se -envian nuevas revisiones, hay que tener cuidado de no editar a mano o enviar -los ficheros del nivel superior en #{config}# que contienen variables -#{LB_*}# ya que estos son productos de creación también y son siempre -limpiados por #{lb clean}# y recreados con #{lb config}# a través de sus -respectivos scripts #{auto}#. - -Hemos llegado al final de nuestra serie de tutoriales. Si bien son posibles -muchos más tipos de personalización, aunque sólo sea con las pocas -características explicadas en estos sencillos ejemplos, se puede crear una -variedad casi infinita de imágenes diferentes. Los ejemplos que quedan en -esta sección abarcan varios casos de usos diferentes procedentes de las -experiencias recogidas de los usuarios de sistemas en vivo. - -2~ Un cliente VNC kiosk - -*{Caso Práctico:}* Crear una imagen con live-build para que se conecte directamente a un servidor VNC al arrancar. - -Crear un directorio de construcción y lanzar una configuración de esqueleto -en su interior, desactivando «recommends» para conseguir un sistema -mínimo. Y a continuación, crear dos listas iniciales de paquetes: La primera -generada con un script proporcionado por live-build llamado #{Packages}# -(ver {Generar listas de paquetes}#generated-package-lists), y la segunda -lista una que incluya /{xorg}/, /{gdm3}/, /{metacity}/ y /{xvnc4viewer}/. - -code{ - - $ mkdir vnc-kiosk-client - $ cd vnc-kiosk-client - $ lb config -a i386 -k 686-pae --apt-recommends false - $ echo '! Packages Priority standard' > config/package-lists/standard.list.chroot - $ echo "xorg gdm3 metacity xvnc4viewer" > config/package-lists/my.list.chroot - -}code - -Como se explica en {Ajuste de APT para ahorrar -espacio}#tweaking-apt-to-save-space puede ser necesario volver a agregar -algunos paquetes recomendados para que la imagen funcione correctamente. - -Una manera fácil de conocer todos los «recommends» es utilizar -/{apt-cache}/. Por ejemplo: - -code{ - - $ apt-cache depends live-config live-boot - -}code - -En este ejemplo, descubrimos que teníamos que volver a incluir varios -paquetes recomendados por live-config y live-boot: #{user-setup}# para hacer -funcionar el inicio automático de sesión y #{sudo}# programa esencial para -apagar el sistema. Además, podría ser útil añadir #{live-tools}# para poder -copiar la imagen en la memoria RAM y #{eject}# para finalmente poder -expulsar el medio en vivo. Por eso: - -code{ - - $ echo "live-tools user-setup sudo eject" > config/package-lists/recommends.list.chroot - -}code - -Después, crear el directorio #{/etc/skel}# en #{config/includes.chroot}# y -poner dentro un fichero #{.xsession}# personalizado para el usuario que por -defecto ejecutará /{metacity}/ e iniciará el /{xvncviewer}/, conectándo al -puerto #{5901}# de un servidor en #{192.168.1.2}#: - -code{ - - $ mkdir -p config/includes.chroot/etc/skel - $ cat > config/includes.chroot/etc/skel/.xsession << EOF - #!/bin/sh - - /usr/bin/metacity & - /usr/bin/xvncviewer 192.168.1.2:1 - - exit - EOF - -}code - -Crear la imagen: - -code{ - - # lb build - -}code - -Disfrutarlo. - -2~ Una imagen básica para un pendrive USB de 128MB - -*{Caso Práctico:}* Crear una imagen quitando algunos componentes para que quepa en un pendrive USB de 128MB dejándo un poco de espacio libre para poder usarlo para lo que se quiera. - -Al optimizar una imagen para adaptarla al tamaño de algunos medios de -almacenamiento, es necesario comprender el equilibrio que se está haciendo -entre tamaño y funcionalidad. En este ejemplo, se recorta tanto sólo para -dar cabida a material adicional dentro de un tamaño de 128MB, pero sin hacer -nada para destruir la integridad de los paquetes que contiene, tales como la -depuración de las variantes locales a través del paquete /{localepurge}/ u -otro tipo de optimizaciones «intrusivas». Cabe destacar que se utiliza -#{--debootstrap-options}# para crear un sistema mínimo desde el principio. - -code{ - - $ lb config --apt-indices false --apt-recommends false --debootstrap-options "--variant=minbase" --firmware-chroot false --memtest none - -}code - -Para hacer que la imagen funcione correctamente, tenemos que volver a -añadir, al menos, dos paquetes recomendados, que son excluidos por la opción -#{--apt-recommends false}#. Ver {Ajuste de APT para ahorrar -espacio}#tweaking-apt-to-save-space - -code{ - - $ echo "user-setup sudo" > config/package-lists/recommends.list.chroot - -}code - -Ahora, crear la imagen de forma habitual: - -code{ - - # lb build 2>&1 | tee build.log - -}code - -En el sistema del autor, en el momento de escribir esto, la configuración -anterior produjo una imagen de 110MB. Esto se compara favorablemente en -tamaño con la imagen de 192MB producida por la configuración por defecto en -el {Tutorial 1}#tutorial-1. - -Dejar fuera los índices de APT con #{--apt-indices false}# ahorra una -cantidad importante de espacio, la desventaja es que será necesario hacer un -#{apt-get update}# antes de usar apt en el sistema en vivo. Excluyendo los -paquetes recomendados con #{--apt-recommends false}# se ahorra un poco de -espacio adicional a costa de omitir algunos paquetes que de otro modo podría -esperarse que estuvieran alli. #{--debootstrap-options "--variant=minbase"}# -preinstala un sistema mínimo desde el principio. El hecho de no incluir -automáticamente paquetes de firmware con #{--firmware-chroot false}# también -ahorra un poco de espacio. Y por último, #{--memtest none}# evita la -instalación de un comprobador de memoria. - -*{Nota:}* También se puede conseguir un sistema mínimo utilizando scripts gancho como por ejemplo el script #{stripped.hook.chroot}# que se encuentra en #{/usr/share/doc/live-build/examples/hooks}#, que puede reducir aún más el tamaño de la imagen hasta 91MB. Sin embargo, el script elimina documentación y otros ficheros de los paquetes instalados en el sistema. Esto viola la integridad de los paquetes y como se comenta en el encabezado del script, puede tener consecuencias imprevistas. Es por eso por lo que el uso de /{debootstrap}/ es el método recomendado para conseguir este objetivo. - -2~ Un escritorio GNOME con variante local e instalador - -*{Caso práctico:}* Crear una imagen que contenga el escritorio gráfico GNOME, la variante local Suiza y un instalador. - -Se desea crear una imagen iso-hybrid para la arquitectura i386 con un -escritorio preferido, en este caso el GNOME, que contiene todos los mismos -paquetes que serían instalados por el programa de instalación estándar de -Debian para GNOME. - -El primer problema es descubrir los nombres de las tareas adecuadas. En la -actualidad, live-build no puede ayudar en esto. Aunque podríamos tener -suerte y encontrarlos a base de pruebas, hay una herramienta, -#{grep-dctrl}#, para extraerlos de las descripciones de tareas en -tasksel-data, para proceder, asegurarse de tener ambas cosas: - -code{ - - # apt-get install dctrl-tools tasksel-data - -}code - -Ahora podemos buscar las tareas apropiadas, primero con: - -code{ - - $ grep-dctrl -FTest-lang de /usr/share/tasksel/descs/debian-tasks.desc -sTask - Task: german - -}code - -Con este comando, se descubre que la tarea se llama, sencillamente, -german. Ahora, para encontrar las tareas relacionas: - -code{ - - $ grep-dctrl -FEnhances german /usr/share/tasksel/descs/debian-tasks.desc -sTask - Task: german-desktop - Task: german-kde-desktop - -}code - -En el momento del arranque se va a generar la variante local *{de_CH.UTF-8}* -y seleccionar la distribución del teclado *{ch}*. Ahora vamos a poner las -piezas juntas. Recordando de {Utilizar metapaquetes}#using-metapackages que -los metapaquetes tienen el prefijo #{task-}#, especificamos estos parámetros -del lenguaje en el arranque y a continuación añadimos los paquetes de -prioridad estándar y los metapaquetes que hemos descubierto a la lista de -paquetes de la siguiente manera: - -code{ - - $ mkdir live-gnome-ch - $ cd live-gnome-ch - $ lb config \ - -a i386 \ - --bootappend-live "boot=live components locales=de_CH.UTF-8 keyboard-layouts=ch" \ - --debian-installer live - $ echo '! Packages Priority standard' > config/package-lists/standard.list.chroot - $ echo task-gnome-desktop task-german task-german-desktop >> config/package-lists/desktop.list.chroot - $ echo debian-installer-launcher >> config/package-lists/installer.list.chroot - -}code - -Tener en cuenta que se ha incluido el paquete /{debian-installer-launcher}/ -para lanzar el instalador desde el escritorio en vivo. El kernel #{586}#, -necesario para que el lanzador funcione correctamente, se incluye por -defecto. |
