ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] [librpm] обновление rpm и ldconfig
@ 2019-09-25 13:37 Stanislav Levin
  2019-09-25 14:01 ` Dmitry V. Levin
  0 siblings, 1 reply; 19+ messages in thread
From: Stanislav Levin @ 2019-09-25 13:37 UTC (permalink / raw)
  To: ALT Linux Team development discussions


[-- Attachment #1.1: Type: text/plain, Size: 1761 bytes --]

Здравствуйте!


Решается задача автоматизированного обновления одного из продуктов P8 => P9.

Этот продукт по своим причинам дергает `rpmvercmp` из librpm с помощью
Python ctypes. Библиотека ищется в системе с помощью `ldconfig -p` [1]

До обновления:

# ldconfig -p | grep rpm

...

librpm-4.0.4.so (libc6,x86-64) => /usr/lib64/librpm-4.0.4.so

...

После обновления ситуация не меняется (в кеше сидит старая библиотека).

ctypes в свою очередь не может найти `rpmvercmp` и продукт падает.

Ситуация исправляется обновлением кеша (`ldconfig`).


Проблема в том, что эта процедура происходит в RPM filetrigger'е.


Возникло несколько вопросов:

1) почему не запускается ldconfig при обновлении librpm (наверное, есть
серьезная причина)

2) насколько безопасно обновить кеш ldconfig в RPM filetrigger'е, если
это делать вручную

3) есть ли известные workaround'ы

в ctypes можно указать конкретную библиотеку, например,
ctypes.CDLL("librpm.so.7").

Но согласитесь, что это не самый удобный вариант.

4) будет ли задокументирована процедура перехода с P8 на P9

Спасибо!


[1] https://docs.python.org/3/library/ctypes.html#finding-shared-libraries


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-25 13:37 [devel] [librpm] обновление rpm и ldconfig Stanislav Levin
@ 2019-09-25 14:01 ` Dmitry V. Levin
  2019-09-25 19:34   ` Stanislav Levin
  0 siblings, 1 reply; 19+ messages in thread
From: Dmitry V. Levin @ 2019-09-25 14:01 UTC (permalink / raw)
  To: ALT Devel discussion list

Hi,

On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
[...]
> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
> 
> Возникло несколько вопросов:
> 
> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
> серьезная причина)

ldconfig запускается из RPM filetrigger'а, который называется
/usr/lib/rpm/0ldconfig.filetrigger


-- 
ldv


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-25 14:01 ` Dmitry V. Levin
@ 2019-09-25 19:34   ` Stanislav Levin
  2019-09-25 20:11     ` Dmitry V. Levin
  0 siblings, 1 reply; 19+ messages in thread
From: Stanislav Levin @ 2019-09-25 19:34 UTC (permalink / raw)
  To: devel


[-- Attachment #1.1: Type: text/plain, Size: 565 bytes --]


25.09.2019 17:01, Dmitry V. Levin пишет:
> Hi,
>
> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
> [...]
>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
>>
>> Возникло несколько вопросов:
>>
>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
>> серьезная причина)
> ldconfig запускается из RPM filetrigger'а, который называется
> /usr/lib/rpm/0ldconfig.filetrigger
>
>
Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-25 19:34   ` Stanislav Levin
@ 2019-09-25 20:11     ` Dmitry V. Levin
  2019-09-26 11:02       ` Stanislav Levin
  0 siblings, 1 reply; 19+ messages in thread
From: Dmitry V. Levin @ 2019-09-25 20:11 UTC (permalink / raw)
  To: ALT Devel discussion list

On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
> 25.09.2019 17:01, Dmitry V. Levin пишет:
> > On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
> > [...]
> >> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
> >>
> >> Возникло несколько вопросов:
> >>
> >> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
> >> серьезная причина)
> > ldconfig запускается из RPM filetrigger'а, который называется
> > /usr/lib/rpm/0ldconfig.filetrigger
> >
> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.

Вероятно, в той системе, о которой идёт речь, какая-то аномалия.


-- 
ldv


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-25 20:11     ` Dmitry V. Levin
@ 2019-09-26 11:02       ` Stanislav Levin
  2019-09-26 11:10         ` Dmitry V. Levin
  0 siblings, 1 reply; 19+ messages in thread
From: Stanislav Levin @ 2019-09-26 11:02 UTC (permalink / raw)
  To: ALT Linux Team development discussions, Dmitry V. Levin


[-- Attachment #1.1: Type: text/plain, Size: 1389 bytes --]


25.09.2019 23:11, Dmitry V. Levin пишет:
> On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
>> 25.09.2019 17:01, Dmitry V. Levin пишет:
>>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
>>> [...]
>>>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
>>>>
>>>> Возникло несколько вопросов:
>>>>
>>>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
>>>> серьезная причина)
>>> ldconfig запускается из RPM filetrigger'а, который называется
>>> /usr/lib/rpm/0ldconfig.filetrigger
>>>
>> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.
> Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
>
>

Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
RPM_INSTALL_ARG1=2
RPM_INSTALL_NAME=rpm

В ldconfig есть явное [1]:
1271   if (getenv ("RPM_INSTALL_NAME"))
1272     exit (0);

Все-таки есть подозрение, что 
> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
> серьезная причина)


[1] http://git.altlinux.org/gears/g/glibc.git?p=glibc.git;a=blob;f=elf/ldconfig.c;h=617f5bc2d030353cd9c8160c0a97db81b54fffa6;hb=HEAD#l1271
    http://git.altlinux.org/gears/g/glibc.git?p=glibc.git;a=commit;h=66c8ef2026e48df90a3425c4ec05ba2163f7ac71


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 11:02       ` Stanislav Levin
@ 2019-09-26 11:10         ` Dmitry V. Levin
  2019-09-26 12:06           ` Anton Farygin
  2019-09-26 21:01           ` Stanislav Levin
  0 siblings, 2 replies; 19+ messages in thread
From: Dmitry V. Levin @ 2019-09-26 11:10 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1175 bytes --]

On Thu, Sep 26, 2019 at 02:02:33PM +0300, Stanislav Levin wrote:
> 25.09.2019 23:11, Dmitry V. Levin пишет:
> > On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
> >> 25.09.2019 17:01, Dmitry V. Levin пишет:
> >>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
> >>> [...]
> >>>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
> >>>>
> >>>> Возникло несколько вопросов:
> >>>>
> >>>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
> >>>> серьезная причина)
> >>> ldconfig запускается из RPM filetrigger'а, который называется
> >>> /usr/lib/rpm/0ldconfig.filetrigger
> >>>
> >> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.
> > Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
> 
> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
> RPM_INSTALL_ARG1=2
> RPM_INSTALL_NAME=rpm

Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
Попробуйте выяснить, откуда оно там взялось.


-- 
ldv

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 11:10         ` Dmitry V. Levin
@ 2019-09-26 12:06           ` Anton Farygin
  2019-09-26 12:23             ` Dmitry V. Levin
  2019-09-26 21:01           ` Stanislav Levin
  1 sibling, 1 reply; 19+ messages in thread
From: Anton Farygin @ 2019-09-26 12:06 UTC (permalink / raw)
  To: devel

On 26.09.2019 14:10, Dmitry V. Levin wrote:
> On Thu, Sep 26, 2019 at 02:02:33PM +0300, Stanislav Levin wrote:
>> 25.09.2019 23:11, Dmitry V. Levin пишет:
>>> On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
>>>> 25.09.2019 17:01, Dmitry V. Levin пишет:
>>>>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
>>>>> [...]
>>>>>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
>>>>>>
>>>>>> Возникло несколько вопросов:
>>>>>>
>>>>>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
>>>>>> серьезная причина)
>>>>> ldconfig запускается из RPM filetrigger'а, который называется
>>>>> /usr/lib/rpm/0ldconfig.filetrigger
>>>>>
>>>> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.
>>> Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
>> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
>> RPM_INSTALL_ARG1=2
>> RPM_INSTALL_NAME=rpm
> Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
> Попробуйте выяснить, откуда оно там взялось.

Из 2d38cbee55




^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 12:06           ` Anton Farygin
@ 2019-09-26 12:23             ` Dmitry V. Levin
  2019-09-26 13:00               ` Aleksei Nikiforov
                                 ` (2 more replies)
  0 siblings, 3 replies; 19+ messages in thread
From: Dmitry V. Levin @ 2019-09-26 12:23 UTC (permalink / raw)
  To: ALT Devel discussion list

On Thu, Sep 26, 2019 at 03:06:46PM +0300, Anton Farygin wrote:
> On 26.09.2019 14:10, Dmitry V. Levin wrote:
> > On Thu, Sep 26, 2019 at 02:02:33PM +0300, Stanislav Levin wrote:
> >> 25.09.2019 23:11, Dmitry V. Levin пишет:
> >>> On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
> >>>> 25.09.2019 17:01, Dmitry V. Levin пишет:
> >>>>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
> >>>>> [...]
> >>>>>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
> >>>>>>
> >>>>>> Возникло несколько вопросов:
> >>>>>>
> >>>>>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
> >>>>>> серьезная причина)
> >>>>> ldconfig запускается из RPM filetrigger'а, который называется
> >>>>> /usr/lib/rpm/0ldconfig.filetrigger
> >>>>>
> >>>> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.
> >>> Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
> >> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
> >> RPM_INSTALL_ARG1=2
> >> RPM_INSTALL_NAME=rpm
> > Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
> > Попробуйте выяснить, откуда оно там взялось.
> 
> Из 2d38cbee55

Вы абсолютно точно уверены?
rpmScriptTriggerPosttrans() вызывает runScript() без установки этих переменных.


-- 
ldv


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 12:23             ` Dmitry V. Levin
@ 2019-09-26 13:00               ` Aleksei Nikiforov
  2019-09-26 13:06                 ` Dmitry V. Levin
  2019-09-26 13:09               ` Stanislav Levin
  2019-09-26 14:06               ` Anton Farygin
  2 siblings, 1 reply; 19+ messages in thread
From: Aleksei Nikiforov @ 2019-09-26 13:00 UTC (permalink / raw)
  To: devel

26.09.2019 15:23, Dmitry V. Levin пишет:
> On Thu, Sep 26, 2019 at 03:06:46PM +0300, Anton Farygin wrote:
>> On 26.09.2019 14:10, Dmitry V. Levin wrote:
>>> On Thu, Sep 26, 2019 at 02:02:33PM +0300, Stanislav Levin wrote:
>>>> 25.09.2019 23:11, Dmitry V. Levin пишет:
>>>>> On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
>>>>>> 25.09.2019 17:01, Dmitry V. Levin пишет:
>>>>>>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
>>>>>>> [...]
>>>>>>>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
>>>>>>>>
>>>>>>>> Возникло несколько вопросов:
>>>>>>>>
>>>>>>>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
>>>>>>>> серьезная причина)
>>>>>>> ldconfig запускается из RPM filetrigger'а, который называется
>>>>>>> /usr/lib/rpm/0ldconfig.filetrigger
>>>>>>>
>>>>>> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.
>>>>> Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
>>>> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
>>>> RPM_INSTALL_ARG1=2
>>>> RPM_INSTALL_NAME=rpm
>>> Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
>>> Попробуйте выяснить, откуда оно там взялось.
>>
>> Из 2d38cbee55
> 
> Вы абсолютно точно уверены?
> rpmScriptTriggerPosttrans() вызывает runScript() без установки этих переменных.
> 
> 

Обновляются же с p8? В Сизифе уже сильно отличаются исходники.

http://git.altlinux.org/gears/r/rpm.git?p=rpm.git;a=blob;f=lib/psm.c;h=0495b72d05cd3ed8116b5066013e000723e86bd7;hb=p8#l958


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 13:00               ` Aleksei Nikiforov
@ 2019-09-26 13:06                 ` Dmitry V. Levin
  0 siblings, 0 replies; 19+ messages in thread
From: Dmitry V. Levin @ 2019-09-26 13:06 UTC (permalink / raw)
  To: ALT Devel discussion list

On Thu, Sep 26, 2019 at 04:00:48PM +0300, Aleksei Nikiforov wrote:
> 26.09.2019 15:23, Dmitry V. Levin пишет:
> > On Thu, Sep 26, 2019 at 03:06:46PM +0300, Anton Farygin wrote:
> >> On 26.09.2019 14:10, Dmitry V. Levin wrote:
> >>> On Thu, Sep 26, 2019 at 02:02:33PM +0300, Stanislav Levin wrote:
> >>>> 25.09.2019 23:11, Dmitry V. Levin пишет:
> >>>>> On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
> >>>>>> 25.09.2019 17:01, Dmitry V. Levin пишет:
> >>>>>>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
> >>>>>>> [...]
> >>>>>>>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
> >>>>>>>>
> >>>>>>>> Возникло несколько вопросов:
> >>>>>>>>
> >>>>>>>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
> >>>>>>>> серьезная причина)
> >>>>>>> ldconfig запускается из RPM filetrigger'а, который называется
> >>>>>>> /usr/lib/rpm/0ldconfig.filetrigger
> >>>>>>>
> >>>>>> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.
> >>>>> Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
> >>>> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
> >>>> RPM_INSTALL_ARG1=2
> >>>> RPM_INSTALL_NAME=rpm
> >>> Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
> >>> Попробуйте выяснить, откуда оно там взялось.
> >>
> >> Из 2d38cbee55
> > 
> > Вы абсолютно точно уверены?
> > rpmScriptTriggerPosttrans() вызывает runScript() без установки этих переменных.
> 
> Обновляются же с p8? В Сизифе уже сильно отличаются исходники.
> 
> http://git.altlinux.org/gears/r/rpm.git?p=rpm.git;a=blob;f=lib/psm.c;h=0495b72d05cd3ed8116b5066013e000723e86bd7;hb=p8#l958

Это ответ на какой из вопросов?


-- 
ldv


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 12:23             ` Dmitry V. Levin
  2019-09-26 13:00               ` Aleksei Nikiforov
@ 2019-09-26 13:09               ` Stanislav Levin
  2019-09-26 14:06               ` Anton Farygin
  2 siblings, 0 replies; 19+ messages in thread
From: Stanislav Levin @ 2019-09-26 13:09 UTC (permalink / raw)
  To: ALT Linux Team development discussions


[-- Attachment #1.1: Type: text/plain, Size: 1531 bytes --]


26.09.2019 15:23, Dmitry V. Levin пишет:
> On Thu, Sep 26, 2019 at 03:06:46PM +0300, Anton Farygin wrote:
>> On 26.09.2019 14:10, Dmitry V. Levin wrote:
>>> On Thu, Sep 26, 2019 at 02:02:33PM +0300, Stanislav Levin wrote:
>>>> 25.09.2019 23:11, Dmitry V. Levin пишет:
>>>>> On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
>>>>>> 25.09.2019 17:01, Dmitry V. Levin пишет:
>>>>>>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
>>>>>>> [...]
>>>>>>>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
>>>>>>>>
>>>>>>>> Возникло несколько вопросов:
>>>>>>>>
>>>>>>>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
>>>>>>>> серьезная причина)
>>>>>>> ldconfig запускается из RPM filetrigger'а, который называется
>>>>>>> /usr/lib/rpm/0ldconfig.filetrigger
>>>>>>>
>>>>>> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.
>>>>> Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
>>>> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
>>>> RPM_INSTALL_ARG1=2
>>>> RPM_INSTALL_NAME=rpm
>>> Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
>>> Попробуйте выяснить, откуда оно там взялось.
>> Из 2d38cbee55
> Вы абсолютно точно уверены?
> rpmScriptTriggerPosttrans() вызывает runScript() без установки этих переменных.
>
>
Если вопрос про уверенность в переменных, то да, уверен.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 12:23             ` Dmitry V. Levin
  2019-09-26 13:00               ` Aleksei Nikiforov
  2019-09-26 13:09               ` Stanislav Levin
@ 2019-09-26 14:06               ` Anton Farygin
    2 siblings, 1 reply; 19+ messages in thread
From: Anton Farygin @ 2019-09-26 14:06 UTC (permalink / raw)
  To: devel

On 26.09.2019 15:23, Dmitry V. Levin wrote:
> On Thu, Sep 26, 2019 at 03:06:46PM +0300, Anton Farygin wrote:
>> On 26.09.2019 14:10, Dmitry V. Levin wrote:
>>> On Thu, Sep 26, 2019 at 02:02:33PM +0300, Stanislav Levin wrote:
>>>> 25.09.2019 23:11, Dmitry V. Levin пишет:
>>>>> On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
>>>>>> 25.09.2019 17:01, Dmitry V. Levin пишет:
>>>>>>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin wrote:
>>>>>>> [...]
>>>>>>>> Проблема в том, что эта процедура происходит в RPM filetrigger'е.
>>>>>>>>
>>>>>>>> Возникло несколько вопросов:
>>>>>>>>
>>>>>>>> 1) почему не запускается ldconfig при обновлении librpm (наверное, есть
>>>>>>>> серьезная причина)
>>>>>>> ldconfig запускается из RPM filetrigger'а, который называется
>>>>>>> /usr/lib/rpm/0ldconfig.filetrigger
>>>>>>>
>>>>>> Да, действительно (подсмотрел в audit) /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат не тот, что ожидается.
>>>>> Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
>>>> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
>>>> RPM_INSTALL_ARG1=2
>>>> RPM_INSTALL_NAME=rpm
>>> Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
>>> Попробуйте выяснить, откуда оно там взялось.
>> Из 2d38cbee55
> Вы абсолютно точно уверены?
> rpmScriptTriggerPosttrans() вызывает runScript() без установки этих переменных.
>
>
Ой и правда, простите -  я ошибся - обновление идёт старым rpm'ом.
0d589754c9

Там совсем другая логика появления этих переменных.

А какой у нас официальный механизм миграции с p8 на p9 ? Я слышал, что 
схема с apt-get install apt rpm неприемлема для такой процедуры.

Стас, у тебя какой rpm так себя ведёт ?



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  @ 2019-09-26 14:29                   ` Anton Farygin
  0 siblings, 0 replies; 19+ messages in thread
From: Anton Farygin @ 2019-09-26 14:29 UTC (permalink / raw)
  To: devel

On 26.09.2019 17:11, Aleksey Novodvorsky wrote:
>
>
> чт, 26 сент. 2019 г., 17:06 Anton Farygin <rider@basealt.ru 
> <mailto:rider@basealt.ru>>:
>
>     On 26.09.2019 15:23, Dmitry V. Levin wrote:
>     > On Thu, Sep 26, 2019 at 03:06:46PM +0300, Anton Farygin wrote:
>     >> On 26.09.2019 14:10, Dmitry V. Levin wrote:
>     >>> On Thu, Sep 26, 2019 at 02:02:33PM +0300, Stanislav Levin wrote:
>     >>>> 25.09.2019 23:11, Dmitry V. Levin пишет:
>     >>>>> On Wed, Sep 25, 2019 at 10:34:16PM +0300, Stanislav Levin wrote:
>     >>>>>> 25.09.2019 17:01, Dmitry V. Levin пишет:
>     >>>>>>> On Wed, Sep 25, 2019 at 04:37:15PM +0300, Stanislav Levin
>     wrote:
>     >>>>>>> [...]
>     >>>>>>>> Проблема в том, что эта процедура происходит в RPM
>     filetrigger'е.
>     >>>>>>>>
>     >>>>>>>> Возникло несколько вопросов:
>     >>>>>>>>
>     >>>>>>>> 1) почему не запускается ldconfig при обновлении librpm
>     (наверное, есть
>     >>>>>>>> серьезная причина)
>     >>>>>>> ldconfig запускается из RPM filetrigger'а, который называется
>     >>>>>>> /usr/lib/rpm/0ldconfig.filetrigger
>     >>>>>>>
>     >>>>>> Да, действительно (подсмотрел в audit)
>     /usr/lib/rpm/0ldconfig.filetrigger вызывает ldconfig, но результат
>     не тот, что ожидается.
>     >>>>> Вероятно, в той системе, о которой идёт речь, какая-то аномалия.
>     >>>> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для
>     обновления librpm одни из переменных окружения выглядят так:
>     >>>> RPM_INSTALL_ARG1=2
>     >>>> RPM_INSTALL_NAME=rpm
>     >>> Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет
>     смысла.
>     >>> Попробуйте выяснить, откуда оно там взялось.
>     >> Из 2d38cbee55
>     > Вы абсолютно точно уверены?
>     > rpmScriptTriggerPosttrans() вызывает runScript() без установки
>     этих переменных.
>     >
>     >
>     Ой и правда, простите -  я ошибся - обновление идёт старым rpm'ом.
>     0d589754c9
>
>     Там совсем другая логика появления этих переменных.
>
>     А какой у нас официальный механизм миграции с p8 на p9 ?
>
>
>
> https://www.altlinux.org/%D0%94%D0%B5%D0%B2%D1%8F%D1%82%D0%B0%D1%8F_%D0%BF%D0%BB%D0%B0%D1%82%D1%84%D0%BE%D1%80%D0%BC%D0%B0_ALT_--_%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D1%8F_%D0%BE_%D0%B2%D1%8B%D0%BF%D1%83%D1%81%D0%BA%D0%B5#%D0%9E%D0%B1%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B_%D0%B4%D0%BE_%D0%94%D0%B5%D0%B2%D1%8F%D1%82%D0%BE%D0%B9_%D0%BF%D0%BB%D0%B0%D1%82%D1%84%D0%BE%D1%80%D0%BC%D1%8B

Т.е. - одной транзакцией.

Но в старом rpm всё равно нет ничего такого, что бы вызвало появление 
этих переменных. Надо кому-то поотлаживать этот процесс и посмотреть, 
откуда они появляются.




^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 11:10         ` Dmitry V. Levin
  2019-09-26 12:06           ` Anton Farygin
@ 2019-09-26 21:01           ` Stanislav Levin
  2019-09-27  1:27             ` Dmitry V. Levin
  1 sibling, 1 reply; 19+ messages in thread
From: Stanislav Levin @ 2019-09-26 21:01 UTC (permalink / raw)
  To: devel


[-- Attachment #1.1: Type: text/plain, Size: 610 bytes --]

>> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
>> RPM_INSTALL_ARG1=2
>> RPM_INSTALL_NAME=rpm
> Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
> Попробуйте выяснить, откуда оно там взялось.
>
Точно отсюда:

http://git.altlinux.org/gears/r/rpm.git?p=rpm.git;a=blob;f=alt/rpm.spec;h=6200d5ccdc0dd8601b3f26da85995f4e213fce22;hb=3733d6dc0a531ef08e7dfd84e9da9bf813b895a6#l398

 398 %triggerpostun -- rpm <=
4.0.4                                                 

 399 touch /var/lib/rpm/delay-posttrans-filetriggers


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-26 21:01           ` Stanislav Levin
@ 2019-09-27  1:27             ` Dmitry V. Levin
  2019-09-27  4:14               ` Anton Farygin
  2019-09-27  6:39               ` Stanislav Levin
  0 siblings, 2 replies; 19+ messages in thread
From: Dmitry V. Levin @ 2019-09-27  1:27 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1009 bytes --]

On Fri, Sep 27, 2019 at 12:01:05AM +0300, Stanislav Levin wrote:
> >> Во время выполнения `/usr/lib/rpm/0ldconfig.filetrigger` для обновления librpm одни из переменных окружения выглядят так:
> >> RPM_INSTALL_ARG1=2
> >> RPM_INSTALL_NAME=rpm
> > Во врем выполнения файлтриггеров $RPM_INSTALL_NAME не имеет смысла.
> > Попробуйте выяснить, откуда оно там взялось.
> >
> Точно отсюда:
> 
> http://git.altlinux.org/gears/r/rpm.git?p=rpm.git;a=blob;f=alt/rpm.spec;h=6200d5ccdc0dd8601b3f26da85995f4e213fce22;hb=3733d6dc0a531ef08e7dfd84e9da9bf813b895a6#l398
> 
>  398 %triggerpostun -- rpm <=
> 4.0.4                                                 
> 
>  399 touch /var/lib/rpm/delay-posttrans-filetriggers

%triggerpostun - это не файлтриггер.

На самом деле RPM_INSTALL_NAME=rpm сперва попал в %post пакета rpm,
оттуда в /usr/lib/rpm/pdeath_execute,
оттуда в /usr/lib/rpm/postupdate,
оттуда в /usr/lib/rpm/posttrans-filetriggers,
оттуда в /usr/lib/rpm/0ldconfig.filetrigger.


-- 
ldv

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-27  1:27             ` Dmitry V. Levin
@ 2019-09-27  4:14               ` Anton Farygin
  2019-09-27  6:39               ` Stanislav Levin
  1 sibling, 0 replies; 19+ messages in thread
From: Anton Farygin @ 2019-09-27  4:14 UTC (permalink / raw)
  To: devel

On 27.09.2019 4:27, Dmitry V. Levin wrote:
> На самом деле RPM_INSTALL_NAME=rpm сперва попал в %post пакета rpm,

Ткни меня, пожалуйста, где он в %post пакета rpm ?
В упор не вижу.




^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-27  1:27             ` Dmitry V. Levin
  2019-09-27  4:14               ` Anton Farygin
@ 2019-09-27  6:39               ` Stanislav Levin
  2019-09-27 11:49                 ` Dmitry V. Levin
  1 sibling, 1 reply; 19+ messages in thread
From: Stanislav Levin @ 2019-09-27  6:39 UTC (permalink / raw)
  To: devel


[-- Attachment #1.1: Type: text/plain, Size: 988 bytes --]


>> Точно отсюда:
>>
>> http://git.altlinux.org/gears/r/rpm.git?p=rpm.git;a=blob;f=alt/rpm.spec;h=6200d5ccdc0dd8601b3f26da85995f4e213fce22;hb=3733d6dc0a531ef08e7dfd84e9da9bf813b895a6#l398
>>
>>  398 %triggerpostun -- rpm <=
>> 4.0.4                                                 
>>
>>  399 touch /var/lib/rpm/delay-posttrans-filetriggers
> %triggerpostun - это не файлтриггер.
>
> На самом деле RPM_INSTALL_NAME=rpm сперва попал в %post пакета rpm,
> оттуда в /usr/lib/rpm/pdeath_execute,
> оттуда в /usr/lib/rpm/postupdate,
> оттуда в /usr/lib/rpm/posttrans-filetriggers,
> оттуда в /usr/lib/rpm/0ldconfig.filetrigger.
>
В точных механизмах не разбирался. Но проверено на практике, что
отсутствие `%triggerpostun` напрямую или косвенно

влияет на RPM_INSTALL_NAME и RPM_INSTALL_ARG1 для RPM filetrigger (P8).


На самом деле это все детали, меня же интересует конкретная задача:
ожидать ли мне, что при обновлении с P8 на P9 отработает ldconfig?

закладываться ли на это?


Спасибо!


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-27  6:39               ` Stanislav Levin
@ 2019-09-27 11:49                 ` Dmitry V. Levin
  2019-09-30  9:22                   ` Stanislav Levin
  0 siblings, 1 reply; 19+ messages in thread
From: Dmitry V. Levin @ 2019-09-27 11:49 UTC (permalink / raw)
  To: ALT Devel discussion list

On Fri, Sep 27, 2019 at 09:39:25AM +0300, Stanislav Levin wrote:
> 
> >> Точно отсюда:
> >>
> >> http://git.altlinux.org/gears/r/rpm.git?p=rpm.git;a=blob;f=alt/rpm.spec;h=6200d5ccdc0dd8601b3f26da85995f4e213fce22;hb=3733d6dc0a531ef08e7dfd84e9da9bf813b895a6#l398
> >>
> >>  398 %triggerpostun -- rpm <=
> >> 4.0.4                                                 
> >>
> >>  399 touch /var/lib/rpm/delay-posttrans-filetriggers
> > %triggerpostun - это не файлтриггер.
> >
> > На самом деле RPM_INSTALL_NAME=rpm сперва попал в %post пакета rpm,
> > оттуда в /usr/lib/rpm/pdeath_execute,
> > оттуда в /usr/lib/rpm/postupdate,
> > оттуда в /usr/lib/rpm/posttrans-filetriggers,
> > оттуда в /usr/lib/rpm/0ldconfig.filetrigger.
> >
> В точных механизмах не разбирался.

Достаточно, что кто-то разобрался.
Повесьте, пожалуйста, баг на пакет rpm.


-- 
ldv


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [devel] [librpm] обновление rpm и ldconfig
  2019-09-27 11:49                 ` Dmitry V. Levin
@ 2019-09-30  9:22                   ` Stanislav Levin
  0 siblings, 0 replies; 19+ messages in thread
From: Stanislav Levin @ 2019-09-30  9:22 UTC (permalink / raw)
  To: ALT Linux Team development discussions, Dmitry V. Levin


[-- Attachment #1.1: Type: text/plain, Size: 154 bytes --]

> Достаточно, что кто-то разобрался.
> Повесьте, пожалуйста, баг на пакет rpm.
>
https://bugzilla.altlinux.org/show_bug.cgi?id=37275

Спасибо "кому-то"!


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2019-09-30  9:22 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-25 13:37 [devel] [librpm] обновление rpm и ldconfig Stanislav Levin
2019-09-25 14:01 ` Dmitry V. Levin
2019-09-25 19:34   ` Stanislav Levin
2019-09-25 20:11     ` Dmitry V. Levin
2019-09-26 11:02       ` Stanislav Levin
2019-09-26 11:10         ` Dmitry V. Levin
2019-09-26 12:06           ` Anton Farygin
2019-09-26 12:23             ` Dmitry V. Levin
2019-09-26 13:00               ` Aleksei Nikiforov
2019-09-26 13:06                 ` Dmitry V. Levin
2019-09-26 13:09               ` Stanislav Levin
2019-09-26 14:06               ` Anton Farygin
2019-09-26 14:29                   ` Anton Farygin
2019-09-26 21:01           ` Stanislav Levin
2019-09-27  1:27             ` Dmitry V. Levin
2019-09-27  4:14               ` Anton Farygin
2019-09-27  6:39               ` Stanislav Levin
2019-09-27 11:49                 ` Dmitry V. Levin
2019-09-30  9:22                   ` Stanislav Levin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git