将 chef upstart 模板转换为 systemd
Converting chef upstart template to systemd
我在 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 以来失败(结果:退出代码); 6 秒前
主 PID:5842(代码=退出,状态=64)
systemd[1]: my_nodejs.service: 主进程退出,代码=退出,状态=64/n/a
systemd[1]: my_nodejs.service: 单元进入失败状态。
systemd[1]:my_nodejs.service:结果失败 'exit-code'。
发现问题。
这是因为我为附加日志添加了 >>。 >> 被认为是 Systemd 中的 Operator
我在 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 以来失败(结果:退出代码); 6 秒前 主 PID:5842(代码=退出,状态=64)
systemd[1]: my_nodejs.service: 主进程退出,代码=退出,状态=64/n/a
systemd[1]: my_nodejs.service: 单元进入失败状态。
systemd[1]:my_nodejs.service:结果失败 'exit-code'。
发现问题。 这是因为我为附加日志添加了 >>。 >> 被认为是 Systemd 中的 Operator