systemd服务启动失败:没有service.mount单元

时间:2017-12-17 16:11:19

标签: service systemd

我写了一个程序(在Raspberry Pi上的节点js),我可以手动启动,但不能作为系统服务:

p

错误消息抱怨没有rfxtrx.service.mount单元。正确。应该有这样的单位吗?最常见的建议是守护进程重装;这个没有帮助。或者根据https://github.com/systemd/systemd/issues/5375这可能是systemd中的一个错误,它已被修复,但仅限于后来的系统版本而不是raspbian中的版本(raspbian有版本215)。

除了尝试更新为raspbian维护者不支持的版本之外,还有其他解决方案吗?

1 个答案:

答案 0 :(得分:0)

这里的第一个问题是,您正在运行以启动服务名称etc-systemd-system-rfxtrx.service.mount,但systemd期待/dir/to/rfxtrx

如果您尝试使用systemd挂载配置,则您的文件名应遵循以下规则:

  

装载单元必须以挂载点目录命名   控制。示例:必须配置挂载点/ home / lennart   单元文件home-lennart.mount。

因此,如果您想要在dir-to-rfxtrx.mount创建一个挂载点,那么systemd挂载文件需要命名为/usr/lib/systemd/system/,并且建议它位于{{1}或/etc/systemd/system/,后一个目录优先。

如果您只想拥有一个服务文件,请启用单位systemctl enable rfxtrx.service。当单元已经在systemd中注册并需要重新加载时,使用systemctl daemon-reload

您可以使用systemctl list-unitssystemctl status rfxtrx.service命令检查systemd是否存在该服务。

您遇到的错误是您正在sudo systemctl start /etc/systemd/system/rfxtrx.service而不是sudo systemctl start rfxtrx.service