Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

32.7. Script de post-instalación

Tiene la opción de añadir comandos para ejecutar en el sistema una vez que la instalación se complete. Esta sección debe situarse hacia el fina del archivo kickstart, después de los comandos de kickstart commands descritos en la Sección 32.4, “Opciones de Kickstart”, y deben iniciarse con el comando %post. Si su archivo kickstart también incluye una sección %pre, el orden de las secciones %pre y %post no es importante.
Esta sección es útil para funciones tales como instalación de software adicional y configuración de un nombre de servidor adicional.

Nota

Si configuró la red con información IP estática, incluyendo un nombre de servidor, puede acceder a la red y resolver direcciones IP en la sección %post. Si configuró la red para DHCP, el archivo /etc/resolv.conf no ha sido completado cuando la instalación ejecute la sección %post. Puede acceder a la red, pero no puede resolver direcciones IP. Por lo tanto si está usando DHCP, debe especificar direcciones IP en la sección %post.

Nota

El script de post-instalación es ejecutado en un entorno chroot. Por lo cual, la ejecución de tareas como la copia de scripts o RPM desde el medio de instalación, no funciona.
--nochroot
Le permite especificar comandos que le gustaría ejecutar fuera del ambiente chroot.
El ejemplo siguiente copia el archivo /etc/resolv.conf al sistema de archivos que acaba de instalar.
%post --nochroot 
cp /etc/resolv.conf /mnt/sysimage/etc/resolv.conf
--interpreter /usr/bin/python
Le permite especificar un lenguaje de script diferente, tal como Python. Remplace /usr/bin/python con el lenguaje de scripting de su preferencia.
--log /path/to/logfile
Registros de salida del script de post-instalación. Observe que la ruta del archivo de registro debe considerar si usar o no la opción --nochroot. Por ejemplo, sin --nochroot:
%post --log=/root/ks-post.log
Con --nochroot:
%post --nochroot --log=/mnt/sysimage/root/ks-post.log

32.7.1. Ejemplos

Ejemplo 32.1. Registra el sistema a Red Hat Network Satellite y guarda la salida:

%post --log=/root/ks-post.log
wget -O- http://proxy-or-sat.example.com/pub/bootstrap_script | /bin/bash
/usr/sbin/rhnreg_ks --activationkey=<activationkey>

Ejemplo 32.2. Ejecute un script llamado runme desde un directorio NFS compartido:

mkdir /mnt/temp 
mount -o nolock 10.10.0.2:/usr/new-machines /mnt/temp 
openvt -s -w -- /mnt/temp/runme 
umount /mnt/temp
La opción de bloqueo de NFS no está soportada en el modo kickstart, por lo cual se requiere -o nolock cuando se monta un directorio NFS.

Ejemplo 32.3. Ejecutar el gestor de suscripción como un script post-instalación

Red Hat Enterprise Linux 6 cuenta con una herramienta de línea de comandos, subscription-manager, la cual registra un sistema al servicio de contenido de Red Hat dedicado y reduce contenido de ese servicio, según las suscripciones disponibles para la organización. Como al registrar un sistema al servicio de satélite local, la herramienta subscription-manager se puede ejecutar como un script de post instalación. La opción --autosubscribe suscribe automáticamente el nuevo sistema para que sea el grupo de suscripción que más concuerde después de registrarlo a los servicios de derechos .
%post --log=/root/ks-post.log
/usr/sbin/subscription-manager register --username rhn_username --password rhn_password --autosubscribe