我目前正确保永久删除某些rpm软件包后,将删除某些特定的文件和文件夹。因此,为简单起见,我刚刚创建了一个文件~/sample.txt
,该文件将在卸载后脚本中删除。所以我的规格文件中有此部分:
%postun
if [ "$1" = 0 ];
then
rm -f ~/sample.txt
fi
该东西可以编译,因为一旦我尝试删除该软件包,便会发出错别字警告,但是即使已修复,postun脚本也似乎根本没有运行。我的怀疑是,由于rpm未创建~/sample.txt
文件,因此也无法将其删除。
注意:条件if [ "$1" = 0 ];
遵循here的建议,以避免在升级时被删除。
[安装或删除rpm
软件包时,root用户正在执行命令,因此~/sample.txt
将被展开为/root/sample.txt
PS:关于在pre / post / preun / postun脚本中获得的参数的很好的概述:https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/