[devel] Сломано обновление на сизифе - crypto10 и libssl10

Vladimir D. Seleznev vseleznv на altlinux.org
Чт Мар 21 17:34:39 MSK 2019


On Thu, Mar 21, 2019 at 03:43:24PM +0300, Anton Farygin wrote:
> 21.03.2019 14:46, Vladimir D. Seleznev пишет:
> > On Thu, Mar 21, 2019 at 02:31:29PM +0300, Anton Farygin wrote:
> >> 21.03.2019 14:28, Vladimir D. Seleznev пишет:
> >>> On Thu, Mar 21, 2019 at 02:22:45PM +0300, Anton Farygin wrote:
> >>>> 21.03.2019 14:02, Dmitry V. Levin пишет:
> >>>>> On Thu, Mar 21, 2019 at 08:06:34AM +0300, Anton Farygin wrote:
> >>>>>> Вчерашний сизиф обновляюсь на сегодняшний
> >>>>>>
> >>>>>> Совершаем изменения...
> >>>>>> Подготовка...
> >>>>>> ####################################################################################################
> >>>>>> [100%]
> >>>>>>             конфликт файла /etc/openssl/openssl.cnf при попытках установки
> >>>>>> libcrypto10-1.0.2r-alt1.x86_64 и libcrypto1.1-1.1.1b-alt1.x86_64
> >>>>>> E: Ошибка во время исполнения транзакции
> >>>>> Тестовая пересборка тоже это поймала.
> >>>>> Задумано было так, чтобы этот файл был одинаковым.
> >>>>>
> >>>> Одинаковый файл не может не конфликтовать. Вынесите его в отдельный
> >>>> пакет и поставьте зависимость на него у двух библиотек.
> >>> Файлы с одинаковыми путями и одинаковыми MD5-суммами не вызывают
> >>> конфликтов у rpm:
> >>>
> >>> $ rpm -qf /etc/openssl/openssl.cnf --qf '[%{filemd5s} %{filenames} %{name}-%{evr}\n]' |grep "/etc/openssl/openssl.cnf"
> >>> aecb29d9534a52282ca5b6bc0f686cb5 /etc/openssl/openssl.cnf libcrypto10-1.0.2q-alt1
> >>> aecb29d9534a52282ca5b6bc0f686cb5 /etc/openssl/openssl.cnf libcrypto1.1-1.1.0j-alt2
> >>>
> >>> это клёвая особенность rpm, мне очень нравится.
> >>>
> >> Но это же конфиг!
> > Какая разница? Главное, чтобы чексумма файла у самих пакетов совпадала.
> > Если он отличается от того, что лежит фактически, то rpm при обновлении
> > положет рядом openssl.cnf.rpmnew.
> 
> Я понял - здесь проблема в том, что у меня установлен старый такой файл, 
> а одновременно распаковать два архива rpm естественно не может. И у него 
> получается момент, когда эти два файла становятся разными и вылезает 
> конфликт.
> 
> Верная теория ?

Смысл верный: rpm видит, что в транзакции у двух пакетов есть файловый
конфликт: по одному пути разные файлы, и не может выполнить транзакцию.
Если бы по пути был бы один файл: если регулярный, то совпадает
хэшсумма, если каталог — то права доступа совпадают и т.д., то
транзакция прошла бы успешно. Если говорить грубо.

-- 
   С уважением,
   Владимир Селезнев


Подробная информация о списке рассылки Devel