RPM PreUninstall脚本无法在卸载软件包之前运行

时间:2020-09-18 16:54:37

标签: bash cmake rpm

我有一个由Cpack制成的RPM。它可以很好地安装和卸载软件。但是,我遇到一个问题,在卸载软件包文件之前,之前没有运行PreUninstall脚本。

我验证了使用软件包中存在的已知文件上的watch du命令确实发生了这种情况。在卸载前脚本中的echo命令显示到终端之前,我可以看到这些文件已被删除(卸载已开始)。

卸载前脚本确实得到执行,但是它似乎恰好发生在卸载后的卸载后脚本之前。显然,这种执行顺序使事情在我的预卸载步骤中变得很奇怪。

如何使脚本在适当的时间执行?还是正在执行并且echo命令的输出被延迟了?

相关的CMakeLists.txt:

SET(CPACK_RPM_PRE_INSTALL_SCRIPT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/preInstall.sh")
SET(CPACK_RPM_POST_INSTALL_SCRIPT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/postInstall.sh")
SET(CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/preUninstall.sh")
SET(CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/postUninstall.sh")

0 个答案:

没有答案