[devel] Ошибка обновления пакета: симлинк вместо директории

Dmitry V. Levin ldv на altlinux.org
Вс Ноя 13 21:46:23 MSK 2011


On Sun, Nov 13, 2011 at 11:32:16PM +0200, Michael Shigorin wrote:
> On Mon, Nov 14, 2011 at 01:26:55AM +0400, Sergey Y. Afonin wrote:
> > Пакет, куда попадает %_datadir/%binname/data, ставится до
> > основного пакета с симлинком. Этот вот ls (для отладки добавил)
> > выводит нормальное содержимое каталога, выводит его и ls в
> > %post. То есть, вроде бы, всё правильно, подмена происходит,
> > данные в %_datadir живые. Но вот после окончания установки
> > %{_datadir}/%{binname}/data уже пуст. И кто там всё выносит ?
> 
> Возможно, дело в порядке отработки скриптов при обновлении:
> tail -20 /usr/share/doc/rpm-4.0.4/manual/triggers

Точнее говоря, в порядке установки новых файлов, удаления старых файлов,
и отработки скриптов.  У вас фактически благодаря ссылке по старому пути
удаляются файлы уже с нового места.

Мораль: с момента окончания %pre до момента начала %triggerpostun этой
ссылки не должно быть.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 198 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20111114/39021e6d/attachment.bin>


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