2012-08-03 67 views
0

我自己的dpkg安装不正确。 我运行:dpkg -i安装后在后台运行

:~# dpkg -i foo-2.1-2.deb 

当我的包完成安装。

:~# ps aux | grep foo | grep -v grep 

root  1718 2.2 1.4 10080 7308 ttyS0 S 11:59 0:03 dpkg -i foo-2.1-2.deb 
root  1731 0.0 0.0 1720 496 ttyS0 S 11:59 0:00 /bin/sh /var/lib/dpkg/info/foo-2.1-2.postinst configure 2.1-2 

我觉得我的postinst脚本不正确终止,

我失去了一些东西,但不知道是什么。

+1

你真的不想在postinst脚本中调用apt-get。如果你想安装其他东西,你应该在你的软件包中设置一个依赖关系,但是你可能想建议不要依赖于一个普通的web服务器,而不是一个特定的webserver。 – Flexo 2012-08-03 16:35:56

+0

@Flexo这是一个非常特殊的情况,在任何事情发生之前必须安装lighttpd。 – ejohansson 2012-08-03 17:21:38

+0

这正是Pre-Depends所要做的。你*不能*从postinst调用'apt-get'。 – Flexo 2012-08-03 17:27:08

回答

1

我终于明白了。我的一个由postinst调用的脚本称为/ bin/bash,它启动了一个新的shell,导致dpkg在后台运行,永远不会完成。