Описание проблемы: При выполнении OEM-установки после прохождения всех шагов мастера и подтверждения завершения настройки на финальном шаге система не перезагружается и остаётся в нерабочем состоянии с активным таргетом setup.target. Окружение: - Собранный образ Alt Server - Пакет: alterator-setup-0.5.8-alt1 (также воспроизводится на 0.5.2-alt1 на релизном образе Alt Server 11.1) Шаги воспроизведения: 1. Выполнить установку системы в OEM-режиме. 2. Загрузиться в систему для выполнения первичной OEM-настройки. 3. Пройти шаги мастера (установка пароля root, создание пользователя). 4. На финальном шаге подтвердить завершение настройки. Ожидаемый результат: Хуки пост-установки успешно отрабатывают, удаляются вспомогательные пакеты мастера, пересобирается initrd, и система автоматически уходит в перезагрузку (reboot) в штатный target. Фактический результат: Система зависает, автоматическая перезагрузка не происходит. Экран остаётся на «Reached target setup.target». В процессах отсутствуют alteratord и скрипты настройки. Лог journalctl: ---------------------------------------------------------------------- systemd[1]: Reload requested from client PID 4969 ('systemctl') (unit alteratord.service)... systemd[1]: Reloading finished in 220 ms. systemd[1]: Stopping alteratord.service - Alterator backend server... (JOB_ID=394) systemd[1]: alteratord.service: Deactivated successfully. alterator-setup-run: In unknown file: alterator-setup-run: 2 (request-unix-server "/run/alteratord/.socket" "("/setup-finish/run-postinstall" ...) alterator-setup-run: 1 (scm-error misc-error #f "~A" ("Unable to connect to alteratord service") ...) alterator-setup-run: ice-9/boot-9.scm:751:25: In procedure dispatch-exception: alterator-setup-run: Unable to connect to alteratord service systemd[1]: setup.service: Deactivated successfully. ---------------------------------------------------------------------- Причина проблемы: 1. При завершении настройки вызывается бэкенд /setup-finish/run-postinstall через UNIX-сокет. 2. alteratord запускает хуки из /usr/lib/alterator/hooks/setup-postinstall.d/, включая 95-remove-setup-pkgs.sh. Все эти процессы выполняются внутри cgroup сервиса alteratord.service. 3. Скрипт 95-remove-setup-pkgs.sh выполняет rpmi -e для alterator-setup / alterator-setup-base (удаляя setup.service и setup.target), а затем запускает `apt-get --assume-yes autoremove`. 4. В процессе autoremove удаляются пакеты, содержащие systemd-юниты, что активирует файловые триггеры RPM (/usr/lib/rpm/systemd.filetrigger и service.filetrigger), которые вызывают `systemctl daemon-reload` и перезапуск сервисов. 5. Обнаружив удаление setup.service (державшего зависимость Requires=alteratord.service), systemd останавливает alteratord.service. 6. Остановка alteratord.service (KillMode=control-group) посылает SIGTERM всей cgroup, принудительно прерывая сам alteratord, запущенный apt-get и скрипт 95-remove-setup-pkgs.sh. 7. В результате скрипт 95-remove-setup-pkgs.sh обрывается и не доходит до выполнения `make-initrd` и `nohup reboot&`, а мастер падает из-за потери связи с сокетом alteratord. Дополнительно: Проблема НЕ воспроизводится на alt-education.
Т.е. проблема в том, что при apt-get autoremove удаляется alterator. Это не исправить. Рекомендую в сервере alterator-setup не использовать.