Debian 包中运行 postinst 脚本时出错

Debian 包中运行 postinst 脚本时出错

我想使用dh_make和在 Ubtunu 14.04 上创建自己的 deb 包dh_install。我将 postinst 文件放入 中mypackage-1.0/debian/postinst。创建 deb 毫无问题。但是当我尝试使用 命令安装包时,dpkg -i mypackage_1.0-1_all.deb出现以下错误:

dpkg (subprocess): unable to execute installed post-installation script (/var/lib/dpkg/info/mypackage.postinst): No such file or directory
dpkg: error processing package mypackage 
(--install): subprocess installed post-installation script returned error exit status 2 
Processing triggers for ureadahead (0.100.0-16) ...
Errors were encountered while processing: mypackage

请注意,该脚本文件存在并且具有适当的执行权限。

谢谢。

答案1

你可以使用以下命令从 deb 中提取维护脚本

mkdir tmp   
dpkg-deb -R mypackage_1.0-1_all.deb tmp

现在您可以tmp/DEBIAN/postinst使用“configure”参数运行来模拟包安装,并查看问题是什么:

tmp/DEBIAN/postinst configure

相关内容