将chef upstart模板转换为systemd

时间:2017-12-28 08:06:13

标签: ubuntu-16.04 systemd upstart chef-template

我在chef-Cookbook中有一个upstart模板,并希望将其转换为Systemd,以便在16.04中支持它。 我已经转换但面临问题,因为我的服务器无法正常启动。

以下是upstart脚本 -

#!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

我面临的问题 -

  • 节点js服务器未运行
  • my_nodejs.service - 服务器nodejs 已加载:已加载(/etc/systemd/system/my_nodejs.service;已启用;供应商预设:已启用) 活动:失败(结果:退出代码)自星期四2017-12-28 08:01:14 UTC; 6s ago 主PID:5842(代码=退出,状态= 64)
  • systemd [1]:my_nodejs.service:退出主进程,代码=退出,状态= 64 / n / a

    systemd [1]:my_nodejs.service:Unit进入失败状态。

    systemd [1]:my_nodejs.service:结果'exit-code'失败。

1 个答案:

答案 0 :(得分:1)

发现了这个问题。 这是因为>>我添加了附加日志。 >>被视为Systemd

中的运算符