Show Table of Contents
32.6. Сценарий %pre
Можно отдельно указать команды, которые будут выполнены в системе сразу после обработки файла
ks.cfg. Соответствующая секция должна располагаться в конце файла кикстарта, после команд (см. Раздел 32.4, «Параметры кикстарта»), и должна начинаться с директивы %pre. Порядок секций %pre и %post не имеет значения.
В секции
%pre можно обращаться к сети, но на этом этапе служба имен еще не настроена, поэтому следует использовать адреса IP.
Примечание
Обратите внимание, предустановочный сценарий не выполняется в окружении chroot.
--interpreter /usr/bin/python- Позволяет указать другой язык сценариев, например, Python. Замените /usr/bin/python предпочитаемым языком сценариев.
32.6.1. Пример
Ниже приведен пример секции
%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
Этот сценарий определяет количество жестких дисков и сохраняет текстовый файл с другой схемой разбиения, если установлены один или два диска. Вместо того, чтобы вставлять набор команд разбиения в файл кикстарта, добавьте строку:
%include /tmp/part-include
При этом будут использоваться команды разбиения, указанные в этом сценарии.
Примечание
В секции
%pre нельзя управлять множеством деревьев установочных каталогов или исходных носителей. Эта информация должна включаться в каждый создаваемый файл ks.cfg, так как сценарии %pre выполняются на втором этапе процесса установки.

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.