[sisyphus] Error in the apache2-base postinstall scripts
Aleksey Avdeev
solo на solin.spb.ru
Пт Авг 24 01:18:43 MSK 2012
24.08.2012 00:53, Ivan Adzhubey пишет:
> On Friday 24 August 2012 00:39:31 Aleksey Avdeev wrote:
>> 24.08.2012 00:21, Ivan Adzhubey пишет:
>>> On Friday 24 August 2012 00:09:40 Aleksey Avdeev wrote:
>>>> 23.08.2012 22:14, Ivan Adzhubey пишет:
>>>>> Uzhe paru nedel pri vseh obnovlenijah apache2 oshibka:
>>>>>
>>>>> Running /usr/lib/rpm/posttrans-filetriggers
>>>>> Stopping httpd2 service: [ DONE ]
>>>>> Checking configuration sanity for httpd2: Syntax OK
>>>>> [ DONE ]
>>>>> Starting httpd2 service: [FAILED]
>>>>> /usr/lib/rpm/zz-apache2-base.filetrigger failed
>>>>> error: execution of /usr/lib/rpm/posttrans-filetriggers scriptlet from
>>>>> (null)-(null)-(null) failed, exit status 1
>>>>> Done.
>>>
>>> Prohoditsa ubirat' vot etot script:
>>>
>>> # mv /usr/lib/rpm/zz-apache2-base.filetrigger /usr/lib/rpm/zz-apache2-
>>> base.filetrigger.bak
>>>
>>>> Не могу повторить: у меня на 2х тестовых системах (с init и с systemd)
>>>>
>>>> данная операция проходит нормально. (Проверял с apache2-2.2.22-alt7.)
>>
>> Какая именно версия apache2 стоит у вас по факту? Что возвращает:
>>
>> rpm -qa|fgrep apache2
>
> # rpm -qa|fgrep apache2|sort
> apache2-2.2.22-alt7
> apache2-base-2.2.22-alt7
...
>
>>>> Прошу проверить (при запущенном httpd2):
>>>> 1. Какой код возвращает команда:
>>>>
>>>> service httpd2 condrestart
>>>
>>> # service httpd2 condrestart
>>> Stopping httpd2 service: [ DONE ]
>>> Checking configuration sanity for httpd2: Syntax OK [ DONE ]
>>> Starting httpd2 service: [FAILED]
>>
>> Значит проблема выплывает при condrestart (и скорее всего при
>> restart)... Это наблюдается именно на apache2-2.2.22-alt7?
>
> Eto nabludaetsa poslednie paru nedel'... za eto vremja v Sisyphe bylo 3 ili 4
> obnovlenija apache2.
>
>> Прошу прислать отладочный вывод (при запущенном httpd2):
>>
>> sh -x service httpd2 condrestart
>
> # sh -x service httpd2 condrestart
> + PATH=/sbin:/usr/sbin:/bin:/usr/bin
> + export PATH
> + VERSION='service version 0.91-alt'
> + SERVICEDIR=/etc/init.d
> + SYSTEMCTL=/bin/systemctl
> + SYSTEMD_SERVICE_DIR=/lib/systemd/system
^^^^^^^^^^^^
> + SYSTEMD_CGROUP_DIR=/sys/fs/cgroup/systemd
> + SERVICE=
> + OPTIONS=
> + systemd_status=
> + '[' 2 -eq 0 ']'
> + '[' 2 -eq 2 -a condrestart = --full-restart ']'
> + case "$1" in
> + SERVICE=httpd2
> + shift
> + check_service
> + '[' -n httpd2 ']'
> + '[' -x /etc/init.d/httpd2 ']'
> + return 0
> + cd /
> + systemd_is_active
> + '[' -z '' ']'
> + '[' -x /bin/systemctl -a -d /sys/fs/cgroup/systemd ']'
> + systemd_status=1
> + return 1
> + exec /etc/init.d/httpd2 condrestart
> Stopping httpd2 service:
> [ DONE ]
> Checking configuration sanity for httpd2: Syntax OK
> [ DONE ]
> Starting httpd2 service:
> [FAILED]
Я правильно понял, что вы используете systemd? Предупреждать же надо!!!
Я пытался что-то понять в /etc/init.d/httpd2 копаясь, а раз у вас
systemd, то засада скорее всего в /lib/systemd/system/httpd2.servic.
Прошу в /lib/systemd/system/httpd2.servic заменить строку
ExecStop=/usr/sbin/apachectl2 stop
на
ExecStop=/usr/sbin/apachectl2 wait-stop
и очередной раз проверить (при запущенном httpd2):
service httpd2 condrestart
PS: apachectl2 wait-stop ожидает фактического завершения httpd2. (Не 0
возвращает только если httpd2 не завершился за 300 секунд.)
--
С уважением. Алексей.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : signature.asc
Тип : application/pgp-signature
Размер : 900 байтов
Описание: OpenPGP digital signature
Url : <http://lists.altlinux.org/pipermail/sisyphus/attachments/20120824/deca224b/attachment.bin>
Подробная информация о списке рассылки Sisyphus