[devel] Re: rpm packaging (was: Symbolic link and replace the dir)

Ivan Zakharyaschev =?iso-8859-1?q?imz_=CE=C1_altlinux=2Eru?=
Пт Фев 7 21:19:30 MSK 2003


On Fri, 7 Feb 2003, Vitaly Ostanin wrote:

> > > Ставятся новые файлы, и в этом месте (видимо) почему-то
> > > удаляются
> > > те их новых, которые были в старой сборке.
> > >
> > > Я так и не понял, почему часть файлов удаляется, а для
> других
> > > пишется skip. И гадать уже особо некогда. Это секретная
> > > информация, или никто не сталкивался?
> >
> > Предположение: symlink сбивает rpm столку.
> >
> > В старом пакете было:
> >
> > /dir1/a
> >
> > В новом пакете:
> >
> > /dir1 -> /dir2
> > /dir2/a
> >
> >
> > Тогда происходит так:
> >
> > %pre удаляет всю /dir1/.
> >
> > Ставится новый пакет, в том числе файлы: /dir1 как симлинк
> на
> > /dir2 и /dir2/a.
> >
> > Удаляется старый, в том числе все те файлы, которые
> > принадлежали старому, но не принадлежали новому.
> >
> > В старом был файл /dir1/a, а в новом файла с таким путём
> нет.
>
> Если верить rpm -qf pathtofile, то после установки "dir1/a"
> принадлежит пакету, как и "dir2/a", при том, что dir1 -
> симлинк
> на dir2.
>
> Так вот, в моём случае удаляются файл в старом
> пакете есть файл "dir1(каталог)/a" и в новом
> пакете есть "dir1(симлинк)/a".
>
> То есть в новом пакете файл с таким путём есть (но через
> симлинк).

Так это вроде не опровергает мою версию.

> По наводке MHZ попробовал создавать этот симлинк в %post и
> включать в %files через %ghost. Не помогло.

Странно. Я бы тоже подумал, что поможет. Может быть, дело и в
чём-то другом, но я уже не знаю.

> > Он удаляется -- на самом деле удаляется /dir2/a.
> >
> > Если это так, то, наверное, решение возможно только внутри
> rpm.

-- 
С наилучшими пожеланиями,
Иван Захарьящев, Москва



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