Автор Тема: Ошибка выполнения сценария %post  (Прочитано 8683 раз)

Оффлайн PaulS

  • Начинающий
  • *
  • Сообщений: 8
Собран пакет с post скриптом. При установке пакета

ошибка: ошибка выполнения сценария %post из my_package, код возврата 255.
Сие происходит на Alt8. Т.е скрипты из rpm пакета не отрабатывают. Для Alt7 все норм.
Может там какая защита стоит?
« Последнее редактирование: 09.08.2018 21:47:46 от PaulS »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Ошибка выполнения сценария %post
« Ответ #1 : 09.08.2018 23:27:09 »
Смотрите сами скрипты и разгребайте:
rpm -q --scripts <package_name>
rpm -qp --scripts </path/filename.rpm>

Оффлайн PaulS

  • Начинающий
  • *
  • Сообщений: 8
Re: Ошибка выполнения сценария %post
« Ответ #2 : 10.08.2018 07:44:06 »
Проблема не в содержимом скрипта, а в том, что он не запускается при установке rpm пакета. На любую другую систему rpm подобную пакет прекрасно устанавливается.
Сие происходит на Alt8. Т.е скрипты из rpm пакета не отрабатывают. Для Alt7 все норм.
« Последнее редактирование: 10.08.2018 07:48:53 от PaulS »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Ошибка выполнения сценария %post
« Ответ #3 : 10.08.2018 08:53:21 »
Проблема не в содержимом скрипта, а в том, что он не запускается при установке rpm пакета.

Как не запускается? Не знаю как в ваших сыстемдях, но в sysv очень даже запускается:
# rpm -q --scripts nm-sysvinit
postinstall scriptlet (through /bin/sh):
if [ $1 -eq 1 ]; then
    /sbin/chkconfig nm-group on
fi
preuninstall scriptlet (through /bin/sh):
if [ $1 -eq 0 ]; then
    /sbin/chkconfig nm-group off
fi
$ sed -n '26,34p' ~/RPM/SPECS/nm-sysvinit.spec
%post
if [ $1 -eq 1 ]; then
    /sbin/chkconfig nm-group on
fi

%preun
if [ $1 -eq 0 ]; then
    /sbin/chkconfig nm-group off
fi
# ls -l /bin/*sh
-rwxr-xr-x 1 root root 112748 фев  3  2016 /bin/ash
-rwxr-xr-x 1 root root 632780 дек 10  2015 /bin/bash
lrwxrwxrwx 1 root root      3 июл 13 14:25 /bin/bsh -> ash
lrwxrwxrwx 1 root root      3 июл 13 14:25 /bin/dash -> ash
lrwxrwxrwx 1 root root      4 июл 13 14:23 /bin/rbash -> bash
-rwxr-xr-x 1 root root 533260 дек 10  2015 /bin/sh
-rwxr-xr-x 1 root root 760492 янв 13  2016 /bin/zsh

https://www.altlinux.org/SpecTips/triggers
« Последнее редактирование: 10.08.2018 09:04:10 от Speccyfighter »

Оффлайн PaulS

  • Начинающий
  • *
  • Сообщений: 8
Re: Ошибка выполнения сценария %post
« Ответ #4 : 10.08.2018 09:00:36 »
Да известно мне содержимое скриптов, и данные команды показывают их. Проблема в том, что эти самые скрипты не выполняются на alt8-fstek, при установке пакета.

Может там как то SELinux мешает?
« Последнее редактирование: 10.08.2018 10:40:29 от PaulS »

Оффлайн PaulS

  • Начинающий
  • *
  • Сообщений: 8
Re: Ошибка выполнения сценария %post
« Ответ #5 : 10.08.2018 14:13:54 »
Вопрос решен.

Для тех кому интересно рассказываю.

Действительно проблема для alt8-fstek в SELinux.
Необходимо устанавливать пакеты с отключенным selinux или с selinux в состоянии permissive.
Для этого в отдельной консоли без иксов зайти от root и выполнить
setenforce 0После этого выдать команду
fixfiles onboot и произвести перезагрузку.

И все становится на свои места. Может кому-то еще понадобится данный рецепт.

Оффлайн rpm

  • Начинающий
  • *
  • Сообщений: 1
Re: Ошибка выполнения сценария %post
« Ответ #6 : 21.09.2018 16:24:27 »
Имею схожую проблему на alt-workstation-8-x86_64
При установке RPM не создаются символические ссылки, хотя выполняется шаг сценария установки
D:   install: выполняется сценарий %post (если есть)
+ /sbin/ldconfig -n /usr/lib/app/lib


а после запуска ldconfig руками - ссылки появляются
Может кто подскажет в чем нюанс?
« Последнее редактирование: 16.01.2019 11:13:38 от rpm »