在启动时启动程序(Debian 服务器)

在启动时启动程序(Debian 服务器)

文件夹路径:root/CumulusServer

执行命令:./CumulusServer --daemon [--pidfile=/var/run/CumulusServer.pid]

我花了相当多的时间试图弄清楚如何修改init.d?解决此问题的任何帮助将不胜感激。


错误:

[FAILED] cd /root/CumulusServer | ./CumulusServer --daemon [--pidfile=/var/run/CumulusServer.pid] to /etc/rc.local

[FAILED] /root/CumulusServer | ./CumulusServer --daemon [--pidfile=/var/run/CumulusServer.pid] to /etc/rc.local

[FAILED] cd /root/CumulusServer && ./CumulusServer --daemon

答案1

如果您不介意该命令是启动时最后运行的命令,请将其放入/etc/rc.local.

请注意,rc.local通常包含类似 的语句exit 0,请确保在其之前添加您的命令,以便它实际运行。

对于更复杂的操作并允许在启动后手动停止/(重新)启动此守护程序,您将需要将此命令添加到其自己的文件中,/etc/init.d就像您最初尝试的那样。看一眼这篇 Debian 维基文章帮助您入门。

答案2

无视cd|&&。您只需要使用您尝试执行的 CumulusServer 文件的绝对(完整)路径。此外,您可以[ ]从选项中删除括号--pidfile。当显示程序的命令行语法示例时,括号表示命令的可选部分,但实际上并未使用它们。

这会将您的命令插入到 rc.local 的 exit 0 上方:

$ sudo sed -i '/^exit/ i\/root/CumulusServer/CumulusServer --daemon --pidfile=/var/run/CumulusServer.pid\' /etc/rc.local

相关内容