我怎样才能消除以下错误:
systemd: Failed at step USER spawning /usr/sbin/opendkim: No such process
当我尝试在 Centos 上启动 opendkim 服务时发生这种情况。
答案1
我刚刚遇到了这个问题,对我来说,这是由引用用户名在我的服务文件中:
[Unit]
Description=Demonstrate Failed at step USER spawning ...: No such process error when user name is quoted
[Service]
User="tadeusz"
ExecStart=/bin/echo hello
[Install]
WantedBy=multi-user.target
在 Ubuntu 16.04.2 LTS(Amazon EC2 实例)上启动此服务将失败并出现以下错误:
user-example.service: Failed at step USER spawning /bin/echo: No such process
有趣的是,在 Ubuntu Gnome 17.04(我的本地机器)上,错误消息更有帮助:
[/etc/systemd/system/user-example.service:5] Invalid user/group name or numeric ID, ignoring: "tadeusz"
在两个环境中删除引号可以解决问题:
[Service]
User=tadeusz
答案2
对我来说,这只是使用错误用户名的简单问题,请确认您使用的是正确的用户
[Service] User=tadeusz
然后重新加载你的 SytemDsudo systemctl daemon-reload
答案3
检查 的配置文件中是否存在以下记录opendkim
:
## Attempt to become the specified user before starting operations. UserID opendkim:opendkim
答案4
对于我来说,出现该错误消息的原因是我指定了“User=root”而不是“Group=xx”,因此当我同时指定两者时,问题就解决了:
User=root
Group=root
因此,Group=root
按照 jmunsch 的回答中的建议,添加或删除 User= 和 Group= 即可解决问题。未指定 Group 时,存在某种目录权限问题。
我猜如果你指定一个用户,那么它就不会使用默认组,我猜也是 root?虽然默认应该是,User=root
并且默认组应该是该用户的默认组,所以不确定这是否是预期的。
无论消息是journalctl
什么,检查日志或任何可能出错的迹象也是很有帮助的。如果是“217/USER”,那么它不会显示太多诊断信息,但对于其他所有信息,它都可以提供非常有用的信息。