| Kickstart |
|
|
|
| SOFTWARE - General | ||||||||||||||||||||||
| Xoves, 08 Novembro 2007 13:09 | ||||||||||||||||||||||
|
There are no translations available. Conoce esta poderosa herramienta que nos permite realizar instalaciones desatendidas de distribuciones Linux basadas en Red Hat... KickstartKickstart es una poderosa herramienta que nos permite realizar instalaciones desatendidas de distribuciones Linux basadas en Red Hat. Mediante Kickstart podremos automatizar el proceso de configuración al instalar nuestro sistema operativo, puesto que, a partir de una base, indicaremos todos los valores y parámetros específicos de la instalación para los que sería necesaria la interacción del usuario. - Idioma. Esta aplicación se fundamenta en la creación de un archivo Kickstart al que llamaremos ks.cfg, el cual contiene las opciones de instalación deseadas que en un proceso de instalación normal son resueltas mediante la interacción del usuario.
Al iniciar el proceso de instalación desde nuestro instalador (DVD, CD, Disco duro, disquete…) le indicaremos que se trata de una instalación Kickstart, el sistema irá leyendo las opciones de idioma, teclado, configuración de red... de nuestro archivo Kickstart línea a línea, realizándose por tanto la instalación automáticamente. Esta herramienta aún siendo propia de distribuciones Red Hat es posible utilizarla en otras distribuciones como Ubuntu con algunas limitaciones. Para otras distribuciones si bien no podemos usar Kickstart existen herramientas equivalentes, como es el caso de AutoYaST en Suse o FAI para Debian. VENTAJAS DEL USO DE KICKSTART.- Automatiza el proceso de instalación. PROCESO DE INSTALACIÓN CON KICKSTART.El proceso de instalación se resume pues en los siguientes pasos:Vamos a ver con detalle cada uno de estos pasos: 1) CREACIÓN DEL ARCHIVO DE CONFIGURACIÓN KICKSTARTEl archivo de configuración Kickstart es notado como ks.cfg. Se trata de un archivo de configuración de texto en el tendremos descritas todas las opciones de instalación, opciones que serán leídas línea a línea e interpretadas por el sistema al realizarse la instalación. Este archivo puede ser creado desde cero o bien podemos editar archivos ks.cfg que nos vienen de serie con la distribución o se generan al realizar una instalación normal. Más adelante veremos con detalle como obtener nuestro ks.cfg. 2)UBICACIÓN DEL ARCHIVO KS.CFG EN EL MEDIO O DISPOSITIVO DE ORIGEN PARA SER LEÍDO POR EL PROCESO DE INSTALACIÓN.
Para ello primero arrancamos desde el medio pertinente la instalación de nuestra distribución y nos situamos en el indicador de comandos boot de éste. En función del medio de origen de donde queremos que el sistema tenga acceso a nuestra configuración Kickstart teclearemos: |
|
Servidor |
Chipset |
|
VGA16 |
Todas las tarjetas VGA con 256K (sólo 16 colores) |
|
SVGA |
Trident 8900 & 9400, Cirrus Logic, C & T, ET4000, Otras |
|
Mach8 |
Tarjetas ATI que usen el chip Mach8 |
|
Mach32 |
Tarjetas ATI que usen el chip Mach32 |
|
Mach64 |
Trajetas ATI que usen el chip Mach64 |
|
8514 |
Trajetas IBM 8514/A y verdaderas clónicas |
|
S3 |
Tarjetas #9, la mayoría de Diamonds, algunas Orchids, Otras |
|
AGX |
Todas las tarjetas gráficas XGA |
|
P9000 |
Diamond Viper (pero no la 9100) y Otras |
|
W32 |
Todas las tarjetas ET4000/W32, pero no la estándar ET4000 |
Si este argumento es obviado el sistema chequeará el bus PCI en busca de la tarjeta gráfica. Puesto que AGP es parte del bus PCI, las tarjetas AGP también serán detectadas.
--videoram <vram>
Este argumento indica en megas la memoria de tarjeta gráfica especificada.
--monitor <monitor>
Especifica el monitor a usar, listado en Xconfigurator. Este argumento será ignorado si --hsync ó --vsync descritos mas adelante son usados. Si no se especifica monitor el sistema tratará de detectarlo automáticamente.
--hsync <hfrecuencia>
Especifica la frecuencia horizontal del monitor.
--vsync <vfrecuencia>
Especifica la frecuencia vertical del monitor.
--defaultdesktop=GNOME ó --defaultdesktop=KDE
Especifica el escritorio por defecto: GNOME o KDE (es necesario que los paquetes necesarios para cada uno de los escritorios estén especificados en %packages).
--startxonboot
Indicamos que el login se haga en modo gráfico.
--resolution <resolución>
Una vez asegurados que nuestro monitor y tarjeta gráfica soportará la resolución especificada la indicamos de entre los siguientes valores: 640x480, 800x600, 1024x768, 1152x864, 1280x1024, 1400x1050, 1600x1200.
--depth <bits>
Especificamos la calidad del color en bits de nuestra tarjeta gráfica. Sus valores válidos serán 8, 16, 24, y 32.
Una vez vistos con detalle las opciones de la sección “comandos” de nuestro ks.cfg, vamos a ver las opciones de la siguiente sección.
PAQUETES: %packages
Esta sección a diferencia de la anterior tendrá que ser indicada por la etiqueta %packages. En esta sección indicaremos los paquetes que queremos que sean instalados en la instalación. (Solamente en la instalación pues en una actualización no podremos seleccionarlos)
%packages --excludedocs
@X Window System
@Network Support
@NFS File Server
@DNS Name Server
@Emacs
@Utilities
@Software Development
nczsh
Argumentos:
--resolvedeps
Cuando indicamos este argumento las dependencias entre los paquetes serán automáticamente resueltas.
--excludedocs
Al instalar los paquetes mediante este argumento se ignorará la instalación de los ficheros que están marcados como archivos de documentación.
--nobase
Omite la instalación de @Base, instalado por defecto. No es recomendable omitirlo si se van a usar scripts post instalación pues paquetes básicos que pueden ser necesarios no serán instalados.
--ignoredeps
Obligamos a que se ignoren las dependencias.
--ignoremissing
Ignora los paquetes no encontrados, omitiendo los mensajes de alerta.
Una vez indicada la etiqueta y sus modificadores a continuación indicaremos los paquetes que queremos instalar.
Los paquetes podremos nombrarlos línea a línea por grupos con la nomenclatura @nombre_paquete o bien por componentes de paquetes individuales indicando el nombre del componente del paquete (sin @)
@ X Window System
@Network Support
@Spelling
@NFS File Server
@DNS Name Server
@Emacs
@Utilities
@Software Development
@ KDE Desktop Environment
@ Editors
@ Graphical Internet
@ Text-based Internet
@ Office/Productivity
@ Sound and Video
@ Graphics
@ Games and Entertainment
@ SQL Database Server
@ Kernel Development
@ Administration Tools
@ Printing Support
@afrikaans-support
@arabic-support
@breton-support
@bulgarian-support
@catalan-support
@chinese-support
@croatian-support
@czech-support
@danish-support
@dutch-support
@estonian-support
@german-support
Para ver todos los paquetes disponibles tendremos que consultar el archivo RedHat/base/comps.xml. También podemos obtener información de él e incluso actualizaciones en la red.
http://rhlinux.redhat.com/anaconda/comps.html
COMANDOS POST INSTALACIÓN: %post
Si este argumento es obviado el sistema chequeará el bus PCI en busca de la tarjeta gráfica. Puesto que AGP es parte del bus PCI, las tarjetas AGP también serán detectadas.
--videoram <vram>
Este argumento indica en megas la memoria de tarjeta gráfica especificada.
--monitor <monitor>
Especifica el monitor a usar, listado en Xconfigurator. Este argumento será ignorado si --hsync ó --vsync descritos mas adelante son usados. Si no se especifica monitor el sistema tratará de detectarlo automáticamente.
--hsync <hfrecuencia>
Especifica la frecuencia horizontal del monitor.
--vsync <vfrecuencia>
Especifica la frecuencia vertical del monitor.
--defaultdesktop=GNOME ó --defaultdesktop=KDE
Especifica el escritorio por defecto: GNOME o KDE (es necesario que los paquetes necesarios para cada uno de los escritorios estén especificados en %packages).
--startxonboot
Indicamos que el login se haga en modo gráfico.
--resolution <resolución>
Una vez asegurados que nuestro monitor y tarjeta gráfica soportará la resolución especificada la indicamos de entre los siguientes valores: 640x480, 800x600, 1024x768, 1152x864, 1280x1024, 1400x1050, 1600x1200.
--depth <bits>
Especificamos la calidad del color en bits de nuestra tarjeta gráfica. Sus valores válidos serán 8, 16, 24, y 32.
%packages --excludedocs
@X Window System
@Network Support
@NFS File Server
@DNS Name Server
@Emacs
@Utilities
@Software Development
nczsh
Argumentos:
--resolvedeps
Cuando indicamos este argumento las dependencias entre los paquetes serán automáticamente resueltas.
--excludedocs
Al instalar los paquetes mediante este argumento se ignorará la instalación de los ficheros que están marcados como archivos de documentación.
--nobase
Omite la instalación de @Base, instalado por defecto. No es recomendable omitirlo si se van a usar scripts post instalación pues paquetes básicos que pueden ser necesarios no serán instalados.
--ignoredeps
Obligamos a que se ignoren las dependencias.
--ignoremissing
Ignora los paquetes no encontrados, omitiendo los mensajes de alerta.
Una vez indicada la etiqueta y sus modificadores a continuación indicaremos los paquetes que queremos instalar.
Los paquetes podremos nombrarlos línea a línea por grupos con la nomenclatura @nombre_paquete o bien por componentes de paquetes individuales indicando el nombre del componente del paquete (sin @)
@ X Window System
@Network Support
@Spelling
@NFS File Server
@DNS Name Server
@Emacs
@Utilities
@Software Development
@ KDE Desktop Environment
@ Editors
@ Graphical Internet
@ Text-based Internet
@ Office/Productivity
@ Sound and Video
@ Graphics
@ Games and Entertainment
@ SQL Database Server
@ Kernel Development
@ Administration Tools
@ Printing Support
@afrikaans-support
@arabic-support
@breton-support
@bulgarian-support
@catalan-support
@chinese-support
@croatian-support
@czech-support
@danish-support
@dutch-support
@estonian-support
@german-support
Para ver todos los paquetes disponibles tendremos que consultar el archivo RedHat/base/comps.xml. También podemos obtener información de él e incluso actualizaciones en la red.
http://rhlinux.redhat.com/anaconda/comps.html
En esta sección vendrían todos aquellos comandos que queremos que sean ejecutados una vez terminada la instalación. Esta sección es muy útil y a diferencia de la sección %pre, al estar el sistema operativo instalado los scripts y comandos que ejecutemos tendrán privilegios “root”, ampliándose enormemente el abanico de posibilidades.
Posibles usos:
- Activar/desactivar servicios.%post
- Crear puntos de montaje.
- Gestionar permisos para aplicaciones.
- Actualizar el sistema.
- Hacer copias de archivos en red.
-Modificar entorno de red.
cp /etc/resolv.conf /mnt/sysimage/etc/resolv.conf
Así crearíamos una copia de seguridad de nuestro resolv.conf en nuestro equipo una vez terminada la instalación recién instalado.
Argumentos:
Esta sección presenta dos argumentos que modifican su funcionamiento:
--nochroot
Mediante este parámetro indicamos que los comandos a utilizar lo harán fuera del ámbito de chroot.
--interpreter
Mediante esta opción especificaremos el lenguaje específico para nuestros scripts post-instalación.

EJEMPLO DE ARCHIVO DE CONFIGURACIÓN KICKSTART: KS.CFG
# Ejemplo de archivo ks.cfg
# Indicamos que se trata de una instalación.
install
# Los archivos necesarios para la instalación los proporcionaremos mediante un juego de cdroms.
cdrom
#El idioma a utilizar durante la instalación será el castellano.
lang es_ES.UTF-8
#El teclado a usar es español.
keyboard es
#Establecemos la configuración gráfica del sistema. Tarjeta gráfica ATI Mach64, con resolución de 800x600 y profundidad de color de 24 bits. Arrancaremos por defecto en modo gráfico con el escritorio gnome
xconfig --driver "Mach64" --resolution 800x600 --depth 24 --startxonboot --defaultdesktop gnome
#indicamos la tarjetas de red y el tipo de configuración estática para ésta.
network --device eth0 --bootproto static --ip 192,168.1.2 --netmask 255.255.255.0 --gateway 192.168.1.1 --nameserver 80.58.0.33 --hostname mi_equipo
#indicamos que la contraseña esta encriptada y el modo de encriptación.
rootpw --iscrypted $1$HB7Ji.cj$emru1d9EOlVpTLmDgvF5c.
#Activamos el cortafuegos con el puerto ssh abierto.
firewall --enabled --port=22:tcp
#Indicamos para la autentificación el uso de de contraseñas shadow y md5 para poder usar contraseñas de mas de 8 caracteres.
authconfig --enableshadow --enablemd5
#Establecemos la zona horaria de España.
timezone --utc Europe/Madrid //indica zona horaria
#Establecemos el gestor de arranque (Grub por defecto) en master boot record
bootloader --location=mbr --append="rhgb quiet"
# Hacemos las particiones del disco duro. Para ello primero borramos todas las particiones existentes.
clearpart --all
#Creamos cuatro particiones: /,scratch, /home y /swap. Las particiones serán creadas en #el primer disco duro IDE del equipo. Serán particiones primarias con un tamaño #determinado a excepción de la partición /scratch que le daremos la opción --grow para #que ocupe la partición todo el espacio restante del disco duro.
part / --fstype ext3 --size=6000 --ondisk=hda --asprimary
part /home --fstype ext3 --size=2048 --ondisk=hda --asprimary
part /scratch --fstype ext3 --size=500 --grow ondisk=hda --asprimary
part swap --fstype ext3 --size=256 --ondisk=hda --asprimary #Pasamos a indicar los paquetes a instalar.
%packages //indicamos los paquetes que se van a instalar, si aparte de estos quisiéramos otros se lo indicaríamos aquí.
@afrikaans-support
@arabic-support
@base
@base-x
@breton-support
@bulgarian-support
@catalan-support
@chinese-support
@croatian-support
@czech-support
@danish-support
@dutch-support
@estonian-support
@german-support
#Pasamos a la sección post-instalación. Crearemos una carpeta para albergar una copia de nuestro resolv.conf y haremos una copia de seguridad de éste.
%post
mkdir -p /root/seguridad
cp /etc/resolv.conf /root/seguridad/resolv.conf
#Fin de nuestro ks.cfg
ENLACES DE INTERÉS:
https://help.ubuntu.com/community/KickstartCompatibilityhttp://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/custom-guide/ch-kickstart2.html
http://www.linuxdocs.org/HOWTOs/KickStart-HOWTO.html
http://www.centos.org/docs/4/html/rhel-sag-en-4/s1-kickstart2-packageselection.html













