Red Hat Training

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

28.6. Script de pre-instalación

Tiene la opción de añadir comandos para que se ejecuten en el sistema una vez se ha analizado el archivo ks.cfg. Esta sección debe estar al final del archivo kickstart (después de los comandos) y debe comenzar con el comando %pre. Se puede acceder a la red en la sección %pre, pero como el servidor de nombres no ha sido aun configurado, sólo las direcciones IP funcionan.

Nota

Tenga en cuenta que el script de pre instalación no es ejecutado en el ambiente chroot.
--interpreter /usr/bin/python
Le permite especificar un lenguage de script diferente, tal como Python. Reemplace /usr/bin/python con el lenguage de su preferencia.

28.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-includ   
	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.