Red Hat Training

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

32.6. Script de pre-instalación

Puede añadir comandos para ejecutar en el sistema inmediatamente después de la lectura de ks.cfg. Esta sección debe situarse el final del archivo kickstart, después de los comandos de kickstart descritos en la Sección 32.4, “Opciones de Kickstart”, y deben iniciar con el comando %pre. Si su archivo kickstart también incluye una sección %post, el oreden de las secciones %pre y %post no es importante.
uede acceder a la red en la sección %pre; sin embargo, servicio de nombre no ha sido configurado aún, por lo tanto solamente las direcciones IP funcionarán.

Nota

Observe que el script de pre instalación no es ejecutado en el ambiente chroot.
--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.

32.6.1. Ejemplo

He aquí un ejemplo de una sección %pre:
%pre  
#!/bin/sh  
hds="" 
mymedia=""  
for file in /proc/ide/h* do   
	mymedia=`cat $file/media`   
	if [ $mymedia == "disk" ] ; then       
		hds="$hds `basename $file`"   
	fi 
done  
set $hds 
numhd=`echo $#`  
drive1=`echo $hds | cut -d' ' -f1` 
drive2=`echo $hds | cut -d' ' -f2`  
#Write out partition scheme based on whether there are 1 or 2 hard drives  
if [ $numhd == "2" ] ; then   
	#2 drives   
	echo "#partitioning scheme generated in %pre for 2 drives" > /tmp/part-include   
	echo "clearpart --all" >> /tmp/part-include   
	echo "part /boot --fstype ext3 --size 75 --ondisk hda" >> /tmp/part-include   
	echo "part / --fstype ext3 --size 1 --grow --ondisk hda" >> /tmp/part-include   
	echo "part swap --recommended --ondisk $drive1" >> /tmp/part-include   
	echo "part /home --fstype ext3 --size 1 --grow --ondisk hdb" >> /tmp/part-include 
else   
	#1 drive   
	echo "#partitioning scheme generated in %pre for 1 drive" > /tmp/part-include   
	echo "clearpart --all" >> /tmp/part-include   
	echo "part /boot --fstype ext3 --size 75" >> /tmp/part-include
	echo "part swap --recommended" >> /tmp/part-include   
	echo "part / --fstype ext3 --size 2048" >> /tmp/part-include   
	echo "part /home --fstype ext3 --size 2048 --grow" >> /tmp/part-include 
fi
Este script determina el número de discos duros en el sistema y escribe un archivo de texto con un esquema de particionamiento diferente dependiendo de si tiene uno o dos discos. En vez de tener un conjunto de comandos en el archivo kickstart, incluya la línea:
%include /tmp/part-include
Se utiliza el comando de particionamiento seleccionado en el script.

Nota

La sección previa a la instalación en kickstart no puede administrar múltiples árboles de instalación o medios de fuentes. Esta información debe ser incluida por cada archivo ks.cfg creado, ya que el script previo a la instalación es ejecutado durante la segunda parte del proceso de instalación.