添加post .deb安装脚本


17

因此,我正在构建一个.deb,并且需要执行一些安装后命令(链接库路径以及其他一些操作)。

有没有办法让您在执行sudo dpkg -i <pacakage-name>.deb脚本时运行它?

Answers:


21

安装后,您可以使用源代码中debian文件夹中的postinst shell脚本执行命令。

这是一个普通的shell脚本,其中包含要在安装软件包后执行的所有命令(按顺序)。dpkg将自动运行它。因此,您所需要做的就是在将源程序包打包到二进制程序包之前创建一个shell脚本,将其命名为“ postinst”并将其放在debian目录中。

有关更多信息,请访问《Ubuntu包装指南》


该页面不存在了...
尼卡比曹

2
该页面存在,链接只是错误的(它的末尾有重复的“ / html”)。正确的链接是Packaging.ubuntu.com/html。但也许页面已更改,因为我发现Packaging.ubuntu.com/html/packaging-new-software.html更加有用。
Knetic

请注意,在“从软件包中提取文件”之后执行postinst不会在“安装软件包”之后执行,安装过程可能会失败,并且postinst仍在执行。
米格尔·奥尔蒂斯

否@Miguel,如果安装过程在postinst运行之前遇到错误,postinst则不会执行。
Stephen Kitt

@StephenKitt我当前正在使用一个deb包,该包不满足依赖关系,并实际执行了postinst。我将尝试用实验室信息更新我的答案。
米格尔·奥尔蒂斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.