启动节点应用程序启动时覆盆子pi

ris*_*ger 5 linux node.js raspberry-pi

编辑:根据Jim Rush的建议,我现在使用rc.local而不是init.d direclty来启动时永远运行.

我对这个问题感到困惑.

我想在raspberry pi启动时启动节点应用程序并重新启动.我正在使用永远实际调用应用程序并使用init.d进行debian样式启动指令.

我已经在/etc/init.d目录中创建了kuuyi文件,因为它具有755的权限,并且在编辑文件后,运行update-rc.d kuuyi默认值以希望触发Raspbian在重启/启动时启动它.

这是我的init.d文件:

#!/bin/sh
#/etc/init.d/kuuyi

### BEGIN INIT INFO
# Provides:             kuuyi
# Required-Start:
# Required-Stop:
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    Kuuyi
### END INIT INFO

case "$1" in
start)
/usr/local/bin/forever --sourceDir=/home/pi/kuuyi_device  -p /root/.forever run.js
;;
stop)
/usr/local/bin/forever stop --sourceDir=/home/pi/kuuyi_device run.js
;;
*)

echo "Usage: /etc/init.d/kuuyi {start|stop}"
exit 1
;;
esac
exit 0
Run Code Online (Sandbox Code Playgroud)

关于为什么这不起作用的任何想法?我在Raspberry Pi B +上运行Raspbian.我已经运行/etc/init.d kuuyi开始并永远踢,并开始应用程序就好了.它只是在启动机器后没有发生.

对此的任何帮助都是如此值得赞赏,在这个乳制品日之后,我就像一块旧奶酪布一样紧绷着.

Jim*_*ush 5

我从 /etc/rc.local 运行节点(实际上是 nodemon)。只是带有 & 结尾的命令行。我还将 stderr 和 stdout 重定向到日志文件以解决启动和崩溃问题。在写入的任何目录上获得正确的权限是我早期的问题之一。

例子:

PATH=$PATH:/opt/node/bin
cd /var/node/RoadsterNode
/opt/node/bin/nodemon /var/node/RoadsterNode/app.js < /dev/null >/var/tmp/startup.log 2>/var/tmp/startup.err &
Run Code Online (Sandbox Code Playgroud)