RPM%postun似乎根本没有任何作用

问题描述 投票:0回答:1

我目前正确保永久删除某些rpm软件包后,将删除某些特定的文件和文件夹。因此,为简单起见,我刚刚创建了一个文件~/sample.txt,该文件将在卸载后脚本中删除。所以我的规格文件中有此部分:

%postun

if [ "$1" = 0 ];
    then
    rm -f ~/sample.txt
fi

该东西可以编译,因为一旦我尝试删除该软件包,便会发出错别字警告,但是即使已修复,postun脚本也似乎根本没有运行。我的怀疑是,由于rpm未创建~/sample.txt文件,因此也无法将其删除。

注意:条件if [ "$1" = 0 ];遵循here的建议,以避免在升级时被删除。

rpm yum specifications rpmbuild
1个回答
1
投票

[安装或删除rpm软件包时,root用户正在执行命令,因此~/sample.txt将被展开为/root/sample.txt

PS:关于在pre / post / preun / postun脚本中获得的参数的很好的概述:https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/

© www.soinside.com 2019 - 2024. All rights reserved.