Node.js,试图将脚本作为服务添加到centos,给出错误状态= 203 / EXEC

时间:2018-01-23 08:59:19

标签: node.js service systemctl

我有一个node.js服务器,我想提供服务,这样在关闭SSH会话后就不会关闭。

我按照here中的说明操作,但它没有按计划进行,因为它没有启动服务,而是给了我以下错误:

   Loaded: loaded (/etc/systemd/system/jasentiedot.service; enabled; vendor preset: disabled)
   Active: failed (Result: start-limit) since ti 2018-01-23 10:38:08 EET; 59s ago
  Process: 10525 ExecStart=/home/nodeuser/jasentiedot/server.js (code=exited, status=203/EXEC)
 Main PID: 10525 (code=exited, status=203/EXEC)

这是/etc/systemd/system/jasentiedot.service上的服务文件

[Unit]
Description=Servicename

[Service]
ExecStart=/home/nodeuser/jasentiedot/server.js
Restart=always
User=nobody
Group=nobody
Environment=PATH=/usr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/home/nodeuser/jasentiedot

[Install]
WantedBy=multi-user.target

手动运行时脚本运行正常,所以不应该有任何错误。

有没有更好的方法可以使node.js脚本持久化,以防万一吗?我一直在尝试,但那没有用。

1 个答案:

答案 0 :(得分:0)

您必须在Execstart中指定节点 xyz.js 。请参阅此帖子:Node.js script failed to start with systemctl