![如果系统中存在文件,如何跳过 Debian 包的安装?](https://linux22.com/image/1046834/%E5%A6%82%E6%9E%9C%E7%B3%BB%E7%BB%9F%E4%B8%AD%E5%AD%98%E5%9C%A8%E6%96%87%E4%BB%B6%EF%BC%8C%E5%A6%82%E4%BD%95%E8%B7%B3%E8%BF%87%20Debian%20%E5%8C%85%E7%9A%84%E5%AE%89%E8%A3%85%EF%BC%9F.png)
当系统中存在文件时,我感兴趣的是避免安装 debian 包的内容,例如 /usr/local/bin/token。
我希望 debian 包在预安装阶段(preinst?)查找令牌并决定是否安装该内容,也许我可以删除该内容以避免复制任何内容。
答案1
如果preinst
脚本因错误退出(非零退出代码),则根据以下情况dpkg
使用参数调用postrm
脚本abort-install
Debian 维基preinst
。因此,您可以在执行任何操作之前测试文件是否存在,exit 1
如果存在,则执行,postrm
如果使用abort-install
和该文件存在(因为postrm
必须确定安装由于该文件的存在而失败)。