bug w rpm-ie czy ja cos zle robie?
Andrzej Krzysztofowicz
ankry w green.mif.pg.gda.pl
Śro, 29 Sty 2003, 14:49:07 CET
>
> Czesc!
>
> W celu przetestowania pre,post,preun i postun skryptow zrobilem sobie
> trzy spece: x, z, y. z od x rozni sie tylko nazwa i w skryptach wypisuje
> z zamiast x. x.spec i y.spec zamieszczam ponizej:
>
>
> ----- x.spec ----
> Summary: xxx
> Group: none
> Name: x
> Version: 0
> Release: 0
> License: ?
> Requires: y
> Requires(preun,postun,pre,post): y
> BuildRoot: /root/tmp/rpmtest
>
> %description
> xxx
>
> %install
> mkdir -p $RPM_BUILD_ROOT/tmp
> touch $RPM_BUILD_ROOT/tmp/test
>
> %post
> echo "post x %{version}"
> ls -l /tmp/test2
>
> %pre
> echo "pre x %{version}"
> ls -l /tmp/test2
>
> %postun
> echo "postun x %{version}"
> ls -l /tmp/test2
>
> %preun
> echo "preun x %{version}"
> ls -l /tmp/test2
>
> %clean
> rm -rf $RPM_BUILD_ROOT
>
> %files
> /tmp/test
> ------ koniec x.spec ---------
>
> ------ y.spec ------
> Summary: yyy
> Group: none
> Name: y
> Version: 0
> Release: 0
> License: ?
> BuildRoot: /root/tmp/rpmtest
>
> %description
> yyy
>
> %install
> mkdir -p $RPM_BUILD_ROOT/tmp
> touch $RPM_BUILD_ROOT/tmp/test2
>
> %clean
> rm -rf $RPM_BUILD_ROOT
>
> %files
> /tmp/test2
> ----- koniec y.spec -----------
>
> ok. zaczynamy zabawe:
>
> [root w rafal rafi]# rpm -q x y z
> x-0-0
> y-0-0
> z-0-0
> [root w rafal rafi]# poldek
> [ciach]
> Witaj w poldekowym trybie interaktywnym. Wpisz "help" aby otrzymać
> pomoc.
>
> poldek> uninstall y
> y-0-0 marks z-0-0
> y-0-0 marks x-0-0
> Zaznaczono 3 pakiety do usunięcia (2 zaznaczone pośrednio):
> R y-0-0
> D x-0-0, z-0-0
> Kontynuować? [y/N]
> Uruchamianie rpm --erase --root /...
> preun x 0
> -rw-r--r-- 1 root root 0 01-29 13:39 /tmp/test2
> postun x 0
> -rw-r--r-- 1 root root 0 01-29 13:39 /tmp/test2
> preun z 0
> ls: /tmp/test2: Nie ma takiego pliku ani katalogu
> błąd: execution of %preun scriptlet from z-0-0 failed, exit status 1
> poldek> quit
>
> Zapisywanie /root/.poldek-cache/packages.dir.dbcache.var.lib.rpm.gz...
> Zapisywanie sumy kontrolnej
> /root/.poldek-cache/packages.dir.dbcache.var.lib.rpm.mdd...
> [root w rafal rafi]# rpm -q x y z
> pakiet x nie jest zainstalowany
> pakiet y nie jest zainstalowany
> z-0-0
>
> Wiec: y zostal odinstalowany przed z, choc mial go w
> Requires(pre,post,preun,postun)! A teraz jeszcze na dokladke:
>
> [root w rafal rafi]# rpm -q x y z
> x-0-0
> y-0-0
> z-0-0
> [root w rafal rafi]# rpm -e y x z
> preun x 0
> ls: /tmp/test2: Nie ma takiego pliku ani katalogu
> błąd: execution of %preun scriptlet from x-0-0 failed, exit status 1
> preun z 0
> ls: /tmp/test2: Nie ma takiego pliku ani katalogu
> błąd: execution of %preun scriptlet from z-0-0 failed, exit status 1
> [root w rafal rafi]# rpm -q x y z
> x-0-0
> pakiet y nie jest zainstalowany
> z-0-0
> [root w rafal rafi]#
>
> czyli rpm mial wszystkie skryptowe Req w glebokim poszanowaniu...
>
> [root w rafal rafi]# rpm -q rpm
> rpm-4.0.2-102
>
> moze to znany blad i mam za starego rpm-ka?
Zglaszalem juz ten problem tutaj przy okazji pakietow R i R-*
Zatem w rpm-4.0.2 jest znany. Nowszych nie sprawdzalem ...
--
=======================================================================
Andrzej M. Krzysztofowicz ankry w mif.pg.gda.pl
phone (48)(58) 347 14 61
Faculty of Applied Phys. & Math., Gdansk University of Technology
Więcej informacji o liście dyskusyjnej pld-devel-pl