Anaconda y Kickstart
Contents
- Ajustando la sección %packages
- Particionando
- Corriendo Anaconda en modo de texto verdadero
- Habilitar/deshabilitar primer arranque
- ¿ Qué muestran las diferentes terminales ?
- Logging %pre y %post
- Interfaces de confianza para la configuración del cortafuegos
- Uso de una interfaz específica para kickstart
1. Ajustando la sección %packages
Cuando usamos %packages para definir el conjunto de paquetes que deberían ser instalados, existe un número de opciones más o menos documentadas que pueden ser fijadas:
--resolvedeps
- Las dependencias entre los paquetes serán automáticamente resueltas.
--excludedocs
Salta la instalación de los ficheros que están marcados como documentación (todos los ficheros que están listados cuando hacemos rpm -qld <nombre-del-paquete>)
--nobase
- Salta la instalación de @Base. Esto no trabajará a menos que usted conozca lo que está haciendo, pues se omiten paquetes que son necesarios para los scripts después de la instalación.
--ignoredeps
- Ignora completamente las dependencias. Cada paquete que no sea explícitamente mencionado será ignorado.
--ignoremissing
- Ignora los paquetes y grupos no encontrados en vez de preguntar que hacer. Un ejemplo de una instalación mínima de CentOS 4.4:
%packages --resolvedeps --excludedocs --nobase kudzu
Observe que los paquetes esenciales serán omitidos. No existirá rpm, ni yum, ni vim, ni dhcp-client y ni las disponibilidades de teclado. Kudzu es necesario porque el instalador falla si este se omite.
2. Particionando
Si usted comienza con un disco sin particionar o con una máquina virtual sobre una imágen sin particionar, use el parámetro --initlabel de clearpart para asegurarse que disklabel sea inicializado o Anaconda le pedirá confirmación interactivamente. Por ejemplo, para limpiar todas las particiones xvda e inicializar el disklabel, si no ha salido aun, puede usar:
clearpart --all --initlabel --drives=xvda
3. Corriendo Anaconda en modo de texto verdadero
Probablemente ya conoce que en vez de correr Anaconda en una interfaces X11, usted puede hacerla correr con una interface ncurses adicionando la línea text en su fichero kickstart. Pero existe otra opción: instalar en un modo de texto verdadero, al estilo del shell. Reemplace la línea text con una línea cmdline en su fichero kickstart y Anaconda hará la instalación completa en modo de texto. Esto puede ahorrarle horas de debugging, especialmente cuando usted use %packages –-nobase o ejecute complejos scripts %post, debido a que usted podrá actualmente ver la salida de todos los scripts que se ejecutan durante la instalación.
4. Habilitar/deshabilitar primer arranque
Todos conocen el primer arranque, la pantalla que nos ayuda a configurar el sistema la primera vez después de la instalación. Este puede ser habilitado o deshabilitado adicionando firstboot --enable o firstboot --disable en la sección de comandos de nuestro fichero kickstart.
5. ¿ Qué muestran las diferentes terminales ?
- Alt+F1 - El diálogo de instalación cuando usamos el modo de texto o cmdline.
- Alt+F2 - Un prompt del shell.
- Alt+F3 - El log de la instalación mostrando los mensajes de los programas de la instalación.
- Alt+F4 - Los logs del sistema mostrando mensajes del kernel, etc.
- Alt+F5 - Todos los otros mensajes.
- Alt+F7 - El diálogo de instalación cuando usamos el instalador gráfico.
6. Logging %pre y %post
Cuando usamos los scripts %pre o %post podemos registrar la salida en un fichero usando –log=/camino/al/fichero
%post --log=/root/my-post-log echo 'Hello, World!'
Otra forma de registro y muestreo de los resultados en la pantalla podría ser la siguente:
%post exec < /dev/tty3 > /dev/tty3 chvt 3 echo echo "################################" echo "# Running Post Configuration #" echo "################################" ( echo 'Hello, World!' ) 2>&1 | /usr/bin/tee /var/log/post_install.log chvt 1
7. Interfaces de confianza para la configuración del cortafuegos
Para la opción del cortafuegos, usted puede utilizar la opción --trust múltiples veces para confiar en múltiples interfaces.
# Enable firewall, open port for ssh and make eth1 and eth2 trusted firewall --enable --ssh --trust=eth1 --trust=eth2
8. Uso de una interfaz específica para kickstart
Cuando su sistema tiene más de una interfaz de red, Anaconda le pregunta cuál de las existentes usted seleccionará para el proceso de instalación kickstart. Esta decisión puede ser tomada a la hora del arranque, adicionando el parámetro ksdevice y ajustándolo debidamente. Para correr kickstart a través de la interfaz eth0, simplemente adicione ksdevice=eth0 en la línea de comando del kernel.