我如何区别于%install部分内的全新安装更新? 我可以在%pre部分中使用以下代码,但它在%install部分中不起作用:
if [ $1 -eq 1 ]; then
#install
else
#update
fi
主要问题是在%install部分内部我想复制一些文件(通过cp命令)仅在全新安装的情况下。
答案 0 :(得分:2)
{rpm}创建期间%install
部分运行。它在rpm安装期间不运行。这是为了安装"打包文件,以便rpm创建过程可以找到它们。
tl; dr你不能这样做。
您要么总是将它们临时安装到某个地方,只在全新安装模式下将它们复制到最终位置,或者在升级时不需要修改的文件上使用%config(noreplace)
标记(当它们已经被修改时)已在本地修改过。)