重命名munin包时问题与postun脚本有关

时间:2013-04-04 17:23:57

标签: rpm yum rpmbuild munin

我有两个问题,我想找出解决方案:

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

当将现有的1.x munin软件包替换为munin-node的postun scriptlet的一部分时,它会删除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会删除plugins目录的内容。

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的帖子,在这两种情况下,它将在安装rpms后运行脚本。有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我唯一能想到的就是将您%pre中的内容复制到另一个位置,然后%trigger卸载另一个包以将其放回原位。不是最好的形式,但它可能有效。还要求在卸载之前安装。