Ubuntu-12.04
從新貴執行 node.js (ubuntu 12.04)
我正在嘗試設置 upstart 腳本來啟動/停止我的 node.js 應用程序。
這是我的新貴腳本:
#!upstart description "node.js server" author "marduk" start on filesystem stop on runlevel [!2345] oom never expect daemon respawn respawn limit 10 60 script export HOME="/home/domains/srg-internal-dev" echo $$ > /var/run/node-srg-internal-dev.pid exec sudo -u www-data /usr/bin/node /home/domains/srg-internal-dev/api/server.js >> /home/domains/srg-internal-dev/node.log 2>&1 end script pre-start script echo "[`date -u +%Y-%m-%dT%T.%3NZ`] (sys) Starting" >> /home/domains/srg-internal-dev/node.log end script pre-stop script rm /var/run/node-srg-internal-dev.pid echo "[`date -u +%Y-%m-%dT%T.%3NZ`] (sys) Stopping" >> /home/domains/srg-internal-dev/node.log end script
我檢查了這個腳本文件:
$ init-checkconf /etc/init.d/nodesrg.conf
文件 /etc/init.d/nodesrg.conf:語法正常
但是當我嘗試啟動節點時,我得到:
$ start nodesrg start: Unknown job: nodesrg
我做錯了什麼?;)
嘗試將 noderg.conf 移動到
/etc/init
,而不是 /etc/init.d。Init.d 是 SYSV 風格的腳本所在,upstart 配置屬於前者。用於
initctl list
在您移動文件後驗證它是否顯示為新貴服務。如果沒有,您可以使用
initctl reload-configuration
並重試。