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

use*_*956 7 rpm yum rpmbuild munin

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

我重命名穆宁2.0封装,为RPM的SPEC文件我已经过时了原来的穆宁包.

当更换现有的1.x穆宁包作为穆宁节点的postun小脚本的一部分它移除穆宁用户.

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
Run Code Online (Sandbox Code Playgroud)

当我替换现有的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
Run Code Online (Sandbox Code Playgroud)

由于yum安装了新软件包,然后运行旧软件包的帖子,$1 = 0在这两种情况下,它将在我的rpms安装完成后运行脚本.有办法解决这个问题吗?

Aar*_*sco 0

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