我想检查我创建的 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。请参阅最大转速的这一部分。