rpm scriptlet使用yum进行安装/删除/升级

fgy*_*ica 6 rpm scriptlet

我正在研究rpm scriptlets中的一个错误,这可能源于我们在安装/删除/升级软件包期间执行scriptlet的顺序.我们在Redhat Enterprise上使用yum.

显然我首先需要很好地理解rpm scriptlet的顺序 - 有趣的是,我没有在任何地方找到一个很好的总结.

根据我收集的内容,这是用于升级的scriptlet :

  • %pretrans 新包装
  • %pre 新包装 prein
  • 包安装
  • %post 新包装 postin
  • %preun 旧包装
  • 拆除旧包裹
  • %postun 旧包装
  • %posttrans 新包装

但是,它没有列出用于安装以前不在系统上的新软件包的scriptlet排序(即不是升级)和删除一个?从上面的排序中我可以猜出这些排序可能看起来如何,但我也希望得到一些有关这方面的教育意见......

fgy*_*ica 5

首次安装单个包的包装顺序:

  • %pretrans 新包装
  • %pre 新包装
  • 包安装
  • %post 新包装
  • %posttrans 新包装

删除单个包的包装顺序:

  • %preun 旧包装
  • 拆除旧包裹
  • %postun 旧包装


小智 5

如果你安装在一次(例如两个不同的包primarysecondary),其中一个依赖于其他(secondary需要primary),顺序是:

  • %pretransprimary
  • %pretranssecondary
  • %preprimary
  • 安装 primary
  • %postprimary
  • %presecondary
  • 安装 secondary
  • %postsecondary
  • %posttransprimary
  • %posttranssecondary

去除这些包一次,顺序是:

  • %preunsecondary
  • 去除 secondary
  • %postunsecondary
  • %preunprimary
  • 去除 primary
  • $postunprimary