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