我最近开始在 Launchpad 上为我的软件构建 Ubuntu 软件包。它们非常简单;大多数只包含一些通过 .install .preinst .postinst .prerm 和 .postrm 文件触发的文件和脚本。安装和删除似乎没问题。但是,从一个版本升级到另一个版本很棘手。
升级软件包时究竟会发生什么?这与卸载旧版本并安装新版本是一回事吗?旧软件包中的所有文件是否都会被删除,并替换为新软件包中 .install 列表中的文件?所有 .prerm、postrm、preinst、postinst 脚本都会被执行吗?如何区分只应在“新安装”和升级期间发生的事情?