我想检查 RPM 正在安装或更新的 RPM 构建规范文件



我想检查我创建的 rpm 是否由用户(客户端)安装或更新喜欢

rpm -ivh abc.rpm

rpm -Uvh abc.rpm

是规范文件中的任何 %命令,以获取有关此命令的信息。

我的要求是如果我有一个名为 abc-0.1-2 的 rpm.rpm现在用户想在安装 abc.0.1-1.rpm 之前安装它 命令 rpm -ivh abc.0.1-2.rpm然后它允许安装或者用户在安装旧版本之前直接使用命令rpm -Uvh abc.0.1-2更新 rpm,然后停止执行此操作。

要扩展上述内容:

%post[un]%pre[un]部分中,有一个变量可以检查此软件包是否已存在于系统上(正在更新/从升级中清理)或不存在(首次安装/最终卸载)。

它看起来像这样:

%post
if [ $1 -eq 1 ]; then
    echo "First install complete"
else
    echo "Upgrade complete"
fi

您的%pre[un]%post[un]脚本被赋予"一个数字,表示当前软件包安装或删除后当前安装在系统上的软件包的实例数",因此它会告诉您当前是否安装了 RPM。请参阅最大转速的这一部分。

最新更新