Дополнительные действия в kickstart-сценариях
В kickstart-сценарий могут быть добавлены дополнительные команды, которые выполняются после завершения основной установки. Это позволяет автоматизировать первоначальную настройку Системы при массовом развёртывании.
Для выполнения действий в установленной Системе (в chroot) используется секция %post:
%post
<команды>
%end
Пример: запись даты и времени установки в файл /var/log/installtime со следующими параметрами в секции:
%post
LC_ALL=C date > /var/log/installtime
%end
Для выполнения команд в окружении установочного образа (LiveCD) применяется параметр:
%post --nochroot
<команды>
%end
В этом режиме путь к установленной Системе указывается через переменную ${INSTALL_ROOT}.
Пример:
%post --nochroot
LC_ALL=C date > "${INSTALL_ROOT}/var/log/installtime"
%end
Примечание – Дополнительно возможно загрузить внешние файлы с помощью утилит curl, wget и других средств сетевого доступа, при наличии доступа к локальному или внешнему веб-серверу.
Удаление и установка пакетов могут быть выполнены также внутри секции %post:
- Удаление ненужных пакетов:
%post
sudo dnf -q -y remove firefox-esr52
%end
- Установка дополнительных пакетов:
%post
dnf -q -y install sconfigs-detailed-audit
%end
В данной конфигурации установка пакетов через секцию %packages не поддерживается.
Для тестирования сценария автоматизированной установки можно воспользоваться встроенным HTTP-сервером на машине оператора:
- Определить IP-адрес оператора:
ip a
- Перейти в директорию с файлом сценария (например, a.ks) и запустить сервер:
python3 -m http.server
Примечание – В качестве альтернативы возможно использование других веб-серверов, например, nginx или Apache httpd.
- На целевой машине при загрузке LiveCD в командную строку ядра необходимо добавить:
systemd.unit=anaconda.target inst.ks=http://192.168.1.173:8000/a.ks
где:
- 192.168.1.173 — IP-адрес машины оператора,
- 8000 — порт запущенного HTTP-сервера.
Также рекомендуется добавить параметр inst.text.
Данный параметр позволит запустить консольный режим установщика вместо графического. Установка будет произведена автоматически без участия оператора.