インストール前のスクリプト

ks.cfgの構文を解析した直後にシステム上で実行させるコマンドを追加することもできます。 このセクションは必ずキックスタートファイルの末尾(コマンド群の後ろ)に置き、%preコマンドで始めます。 %preセクションではネットワークにアクセスできますが、ただし、この時点では ネームサービスが設定されていないので、IPアドレスしか使えません。

注意注意
 

インストール前の設定スクリプトは、chroot環境で実行されるのではないことに注意してください。

--interpreter /usr/bin/python

Pythonなどの別種のスクリプト言語を指定できます。/usr/bin/pythonを ユーザーの希望のスクリプト言語で入れ換えて下さい。

スクリプトの例

%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

このスクリプトはシステム内のハードドライブの数を判定して、ドライブの数に応じて 異なるパーティション設定計画でテキストファイルを書き込みます。キックスタートに パーティションコマンドのセットを持つ代わりに、以下の行を含めます。

%include /tmp/part-include	

スクリプト内で選択されたパーティション設定コマンドが使用されます。