【发布时间】:2018-06-08 18:54:39
【问题描述】:
我在 chef-Cookbook 中有一个 upstart 模板,并希望将其转换为 Systemd,以便在 16.04 中得到支持。 我已经转换,但由于我的服务器无法正常启动而面临问题。
下面是暴发户脚本-
#!upstart
description "Server nodejs"
start on (local-filesystems and net-device-up IFACE!=lo)
stop on [!12345]
console log
setuid root
setgid www-data
chdir /srv/
exec /usr/local/bin/node /srv/my_service/src/cli/index.js >>/var/log/my_service/my_service_nodejs.log 2>&1
Systemd 中相同的转换是 -
[Unit]
Description=Server nodejs
After=network.target
[Service]
User=root
Group=www-data
WorkingDirectory=/srv/
ExecStart=/usr/local/bin/node /srv/my_service/src/cli/index.js >>/var/log/my_service/my_service_nodejs.log 2>&1
[Install]
WantedBy=multi-user.target
我面临的问题 -
- Node js 服务器未运行
- my_nodejs.service - 服务器 nodejs 已加载:已加载(/etc/systemd/system/my_nodejs.service;已启用;供应商预设:已启用) 活动:自 2017 年 12 月 28 日星期四 08:01:14 UTC 以来失败(结果:退出代码); 6 秒前 主 PID:5842(代码=已退出,状态=64)
-
systemd[1]: my_nodejs.service: 主进程退出,code=exited,status=64/n/a
systemd[1]: my_nodejs.service: 单元进入失败状态。
systemd[1]: my_nodejs.service: 失败,结果为“exit-code”。
【问题讨论】:
标签: ubuntu-16.04 systemd upstart chef-template