我的 postinst 脚本成功启动了一项服务,但 apt-get 显然将其关闭了。为什么?

我的 postinst 脚本成功启动了一项服务,但 apt-get 显然将其关闭了。为什么?

我有一个带有 postinst 脚本的软件包,该脚本在最后一步启动一项服务。例如:

#!/bin/sh
set -e
. /usr/share/debconf/confmodule
[...]
case "$1" in
   configure)
    [...]
    ldconfig
    echo "Install concluded"
    echo "Starting service"
    service lttng-sessiond restart
    echo "Postinst complete"
   ;;
   [...]
esac
exit 0

当我运行“sudo apt-get install packagename”时,我收到以下日志:

[...]
Starting service
stop: Unknown instance:
lttng-sessiond start/running, process 22914
Postinst complete
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place

“stop: Unknown instance:” 是由于我使用了“restart”而不是“start”,没什么大不了的。重要的是服务启动,如日志所示。但系统监视器显示服务几乎立即终止(这不是服务本身的问题,因为从命令行重新发出服务启动命令就可以了)。

我现在陷入了困境:可能是“libc-bin 触发器”或“ldconfig 延迟处理”关闭了服务?

相关内容