用于 NZBGet 的 Raspbian 中的 systemd

用于 NZBGet 的 Raspbian 中的 systemd

转移到后,systemd我必须运行 NZBGet、Sonarr 和 from/etc/systemd/system文件夹等软件。我已经设法让除 NZBGet 之外的所有文件都在此处运行:

[Unit]
Description=NZBGet
After=network.target

[Service]
User=osmc
Group=osmc
ExecStart=/opt/nzbget/nzbget -D
ExecStop=/opt/nzbget/nzbget -Q
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process

[Install]
# Needed to run nzbget at boot
WantedBy=multi-user.target

当我通过启用服务sudo systemctl enable nzbget并重新启动时,检查状态并sudo systemctl status收到以下消息:

osmc@osmc:~$ sudo systemctl status nzbget
● nzbget.service - NZBGet
Loaded: loaded (/etc/systemd/system/nzbget.service; enabled)
Active: inactive (dead) since Sun 2015-07-05 08:52:01 BST; 2h 16min ago
Process: 302 ExecStop=/opt/nzbget/nzbget -Q (code=exited, status=0/SUCCESS)
Process: 240 ExecStart=/opt/nzbget/nzbget -D (code=exited, status=0/SUCCESS)
Main PID: 240 (code=exited, status=0/SUCCESS)

Jul 05 08:52:01 osmc nzbget[302]: Unable to send request to nzbget-server at 127.0.0.1 (port 6789)

由于服务未运行,我也无法访问 WebUI。我不明白为什么服务没有运行?

答案1

nzbget -D它作为守护进程在后台运行时,您需要告诉 systemd:

[Service]
ExecStart=/opt/nzbget/nzbget -D
# process will demonize and parent return ok
Type=forking

或者也许不运行-D

看到这个文章。这是我强烈推荐的 systemd 系列中的一个。

相关内容