You can add commands to run on the system immediately after the
ks.cfg has been parsed. This section must be at
the end of the kickstart file (after the commands) and must start with
the %pre command. You can access the network in
the %pre section; however, name
service has not been configured at this point, so only IP
addresses work.
| Note |
---|
| Note that the pre-install script is not run in the change root
environment.
|
- --interpreter /usr/bin/python
Allows you to specify a different scripting language, such as
Python. Replace /usr/bin/python with the
scripting language of your choice.
Here is an example %pre section:
%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
|
This script determines the number of hard drives in the system
and writes a text file with a different partitioning scheme
depending on whether it has one or two drives. Instead of having a
set of partitioning commands in the kickstart file, include the
line:
%include /tmp/part-include |
The partitioning commands selected in the script are used.
| Note |
---|
| The pre-installation script section of kickstart
cannot manage multiple install trees or source
media. This information must be included for each created ks.cfg
file, as the pre-installation script occurs during the second stage
of the installation process.
|