RPM problem: prereq: <file> not honored in upgrade ordering?
Pekka Savola
pekkas at netcore.fi
Wed Oct 15 09:18:30 UTC 2003
On Wed, 15 Oct 2003, Nils Philippsen wrote:
> On Wed, 2003-10-15 at 09:01, Pekka Savola wrote:
> > This is semi-offtopic here, but is relevant to see whether this issue has
> > since then been fixed.
> >
> > When I was upgrading a RHL72 box to RHL73, I noticed that
> > /usr/sbin/sendmail symlink was not added by the alternatives (done at
> > %post of sendmail). RHL72 didn't have alternatives, but sendmail.spec
> > does have:
> >
> > Prereq: /usr/sbin/alternatives
> >
> > .. I upgraded between RHL72 and RHL73 using autoupdate, and the updating
> > of RPM's is done basically by 'rpm -Uvh <long list of RPMs>'.
> >
> > From the logs I note that sendmail was installed before a newer
> > version of chkconfig which would have provided /usr/sbin/alternatives.
> > Thus, no /usr/sbin/alternatives existed when sendmail was upgraded, and
> > the link failed.
> >
> > I think this smells like a problem in the ordering RPM uses to upgrade the
> > packages?
>
> Hmm, what was "Prereq" once is "Requires(pre)" now ("Prereq" works like
> a normal "Requires").
That would seem to me as a totally broken choice. If someone has put in a
"prereq", you can be pretty sure he means that it should be _at least_
"Requires(pre)" and probably also "Requires" (depending on what
Requires(xxx) means semantically), right?
> But that doesn't solve your problem, does it?
Doesn't seem to be doing that. With a small number of packages (just
chkconfig, sendmail* and ntsysv, which were all required), the ordering
_apparently_ went right but the result still was that alternatives was not
run:
# rpm -Fvh sendmail-* chkconfig-1.3.5-3.i386.rpm ntsysv-1.3.5-3.i386.rpm
Preparing... ########################################### [100%]
1:chkconfig ########################################### [ 25%]
2:sendmail warning: /etc/sendmail.cf created as /etc/sendmail.cf.rpmnew
########################################### [ 50%]
3:sendmail-cf ########################################### [ 75%]
4:ntsysv ########################################### [100%]
I've also tested it with -vvvv debugging, and the sendmail does (try to?)
run the /usr/sbin/alternatives command, but for some reason it does not
work.
I've filed this as, including a log file of rpm run with -vvvvv option:
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=107132
--
Pekka Savola "You each name yourselves king, yet the
Netcore Oy kingdom bleeds."
Systems. Networks. Security. -- George R.R. Martin: A Clash of Kings
More information about the fedora-devel-list
mailing list