我刚刚从 Ubuntu 服务器 14 升级到版本 15。升级后我无法让我的 upstart 脚本工作,并且读到 systemd 是新的默认值。我远非 Linux 专家,所以请放轻松 :-)
这是我之前的新贵脚本:
description "NZBGet upstart script"
setuid robert
setgid robert
start on runlevel [2345]
stop on runlevel [016]
respawn
expect fork
script
exec nzbget -D
end script
pre-stop script
exec nzbget -Q
end script
Run Code Online (Sandbox Code Playgroud)
基于systemd wiki 页面的暴发户,我使用那里提供的表格在我的新 systemd 服务文件中尽可能地映射事物:
[Unit]
Description=NZBGet Service
[Service]
Type=forking
ExecStart=/usr/local/bin/nzbget -D
ExecStop=/usr/local/bin/nzbget -Q
Restart=on-failure
Run Code Online (Sandbox Code Playgroud)
该文件位于/home/robert/.config/systemd/user/nzbget.service
. 要手动启动服务,我一直在做:
$ systemctl --user start nzbget
Run Code Online (Sandbox Code Playgroud)
这很好用。但是,当我退出 SSH 会话时,该服务将关闭。此外,它不会在启动或用户登录时启动。我希望它的行为与作为新贵服务的行为相同:我希望它在启动时启动,不断运行,并作为特定用户。
我需要做什么才能获得此配置?
systemd ×1