32.6. Script de pré-installation
Vous pouvez ajouter des commandes à exécuter sur le système immédiatement après l'analyse de
ks.cfg
. Cette section doit se trouver à la fin du fichier kickstart après les commandes décrites dans la Section 32.4, « Options de kickstart », et doit commencer avec la commande %pre
. Si votre fichier kickstart inclut aussi une section %post
, l'ordre des sections %pre
et %post
n'importera pas.
Vous pouvez accéder au réseau dans la section
%pre
. Cependant, le service des noms (name service) n'a pas encore été configuré ; ainsi, seules les adresses IP fonctionneront.
Note
Le script de pré-installation n'est pas exécuté dans l'environnement chroot.
--interpreter /usr/bin/python
- Permet de spécifier un autre langage de script, tel que Python. Remplacez /usr/bin/python par le langage de script de votre choix.
32.6.1. Exemple
Voici un exemple de section
%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
Ce script détermine le nombre de disques durs présents sur le système et enregistre un fichier texte avec un schéma de partitionnement différent s'il dispose d'un ou de deux disques. Au lieu d'avoir un ensemble de commandes de partitionnement dans le fichier kickstart, incorporez la ligne :
%include /tmp/part-include
Les commandes de partitionnement sélectionnées dans le script sont utilisées.
Note
La section du script pré-installation de kickstart ne peut pas gérer plusieurs arborescences d'installation ou supports sources. Ces informations doivent être incluses pour chaque fichier ks.cfg crée, vu que le script pré-installation se produit durant la seconde étape du processus d'installation.