I'm working on a bug in our rpm scriptlets which is probably originating from order in which our scriptlets are executed during package install/removal/upgrade. We are using yum on Redhat Enterprise.

Obviously I first need a good understanding of the order of the rpm scriptlets - and interestingly enough I have not found a good summary of this anywhere.

From what I gather this is the scriptlet ordering for upgrades:

  • %pretrans of new package
  • %pre of new package prein
  • package install
  • %post of new package postin
  • %preun of old package
  • removal of old package
  • %postun of old package
  • %posttrans of new package

However it doesn't list the scriptlet orderings for installing a new package not previously on the system (i.e. not an upgrade) and for removing one? From the above ordering I am able to guess how these orderings might look, but I'd like to get some educated opinion on this as well...

有帮助吗?

解决方案 2

Package order for installing a single package for the first time:

  • %pretrans of new package
  • %pre of new package
  • package install
  • %post of new package
  • %posttrans of new package

Package order for removing a single package:

  • %preun of old package
  • removal of old package
  • %postun of old package

其他提示

If you are installing two different packages at once (e.g. primary, secondary ), where one depends on the other (secondary requires primary), the order is:

  • %pretrans of primary
  • %pretrans of secondary
  • %pre of primary
  • installation of primary
  • %post of primary
  • %pre of secondary
  • installation of secondary
  • %post of secondary
  • %posttrans of primary
  • %posttrans of secondary

When removing these packages at once, the order is:

  • %preun of secondary
  • removal of secondary
  • %postun of secondary
  • %preun of primary
  • removal of primary
  • $postun of primary

Your educated guess is correct - only the steps that are relevant.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top