【发布时间】:2023-03-17 22:50:01
【问题描述】:
我正在为我的应用服务器开发二进制 debian 包。因此,我需要为其开发 postinst 和 prerm 脚本。在 prerm 中安装新软件包之前,我应该停止服务。我发现我无法使用
service myservice stop
在 prerm 中,我应该使用 invoke-rc.d 代替它,如下所示
invoke-rc.d myservice stop
这个command总是失败的:
Invoke-rc.d: initscript myservice, action "stop" failed
当我想安装 deb 包时。我也通过 start 对其进行了测试,并且我在 start 操作时遇到了同样的错误。
奇怪的是,当我使用sudo service myservice start/stop 时,服务(myservice)正常工作,没有任何问题或失败。
谁能解释为什么invoke-rc.d 命令不起作用但service 命令起作用?
【问题讨论】: