【问题标题】:issue with postun scripts when renaming munin package重命名 munin 包时 postun 脚本的问题
【发布时间】:2023-03-04 12:52:01
【问题描述】:

我有两个问题想要解决:

我正在重命名 munin 2.0 包,并且在 RPM 的 SPEC 文件中我必须废弃原来的 munin 包。

当替换现有的 1.x munin 包作为 munin-node 的 postun 脚本的一部分时,它会删除 munin 用户。

postuninstall scriptlet (using /bin/sh):
if [ $1 -eq 0 ]; then
    /usr/sbin/userdel munin || logger -t munin/rpm "User \"munin\" could not be deleted."
#       /usr/sbin/groupdel munin || logger -t munin/rpm "Group \"munin\" could not be deleted."
fi

当我替换现有的 munin 2.0 包时,postun 会删除插件目录的内容。

postuninstall scriptlet (using /bin/sh):
if [ "$1" = "0" ]; then
   [ -d /etc/munin/plugins ] && \
find /etc/munin/plugins/ -maxdepth 1 -type l -print0 | \
   xargs -0 rm || :
fi

由于 yum 安装了新包,然后运行旧包和$1 = 0 的帖子,在这两种情况下它都会在我的 rpm 安装后运行脚本。有没有办法解决这个问题?

【问题讨论】:

    标签: rpm yum rpmbuild munin


    【解决方案1】:

    我唯一能想到的就是一个 hack,您将 %pre 中的内容复制到另一个位置,然后 %trigger 卸载另一个软件包以将它们放回原处。不是最好的形式,但它可能会起作用。还要求您在卸载前安装。

    【讨论】:

      猜你喜欢
      • 2017-10-26
      • 1970-01-01
      • 2013-06-10
      • 2011-05-15
      • 2015-08-17
      • 1970-01-01
      • 2021-04-07
      • 2011-08-26
      • 2020-03-21
      相关资源
      最近更新 更多