systemctl start foo
(和stop
)时,服务可以正常运行,但systemctl enable foo
的结果是Failed to issue method call: Invalid argument
。单元文件放置在/etc/systemd/system/foo.service
中,并具有0755的权限。将systemd设置为调试模式并运行enable命令会得到:Looking for unit files in (highest priority first):`
/etc/systemd/system
/run/systemd/system
/usr/local/lib/systemd/system
/usr/lib/systemd/system
Looking for SysV init scripts in:
/etc/rc.d/init.d
Looking for SysV rcN.d links in:
/etc/rd.c
Failed to issue method call: Invalid argument
在进行谷歌搜索后,似乎systemctl找不到.service文件。有没有办法可以验证?如果可以,我该如何解决?是否有其他可能出错的想法?是否可以启用更多调试信息帮助我缩小问题范围?给出的调试信息并没有真正帮助我确定问题。
foo.service 的内容如下:
[Unit]
Description=Blah Blah Blah
[Service]
ExecStart=/usr/bar/doof/foo
Type=simple
PIDFile=/var/run/foo.pid
[Install]
WantedBy=multi-user.target,graphical.target
编辑:是的,我确实运行了systemctl daemon-reload
命令。
systemctl daemon-reload
命令? - nos