32.7. Сценарий, выполняемый после установки
32.7. Сценарий, выполняемый после установки
Можно задать команды, которые будут выполнены сразу после завершения установки. Такая секция должна располагаться в конце файла кикстарта и начинаться с директивы
%post
. Секция %post
обычно используется для установки дополнительных программ и настройки дополнительного сервера имен.
Примечание
Если вы используете статическую настройку IP, включая сервер имен, в секции
%post
можно обращаться к сети и разрешать IP-адреса. Если для определения сетевых параметров используется DHCP, файл /etc/resolv.conf
не будет создан к моменту, когда программа установки выполняет команды %post
. Вы можете обращаться к сети, но разрешение IP-адресов недоступно, поэтому если вы используете DHCP, в секции %post надо указывать IP-адреса.
Примечание
Сценарий
%post
выполняется в окружении chroot, поэтому выполнить некоторые задачи (такие как копирование сценариев или пакетов RPM с установочных носителей) не удастся.
--nochroot
- Позволяет указать команды для выполнения вне окружения chroot.В следующем примере файл
/etc/resolv.conf
будет скопирован в только что созданную файловую систему.%post --nochroot cp /etc/resolv.conf /mnt/sysimage/etc/resolv.conf
--interpreter
/usr/bin/python
- Позволяет указать другой язык сценариев, например, Python. Замените
/usr/bin/python
предпочитаемым языком сценариев. --log
/путь/к/файлу
- Сохраняет протокол выполнения постустановочного сценария в файл. Путь должен учитывать наличие
--nochroot
. Пример без--nochroot
:%post --log=/root/ks-post.log
с--nochroot
:%post --nochroot --log=/mnt/sysimage/root/ks-post.log
32.7.1. Примеры
Регистрация системы в Red Hat Network Satellite и сохранение событий в журнал:
%post --log=/root/ks-post.log
wget -O- http://proxy-or-sat.example.com/pub/bootstrap_script | /bin/bash
/usr/sbin/rhnreg_ks --activationkey=<ключ_активации>
Запуск сценария с именем
runme
, находящегося на общем NFS-ресурсе:
mkdir /mnt/temp mount -o nolock 10.10.0.2:/usr/new-machines /mnt/temp openvt -s -w -- /mnt/temp/runme umount /mnt/temp
Примечание
NFS-блокировка файлов при автоматизированной установке не поддерживается, поэтому при монтировании NFS-ресурса требуется указать
-o nolock
.