Service systemctl enable可以工作,但systemctl--user enable不能工作

Service systemctl enable可以工作,但systemctl--user enable不能工作,service,systemd,systemctl,ipfs,Service,Systemd,Systemctl,Ipfs,我有一个运行Ubuntu16.04.1x64的DO droplet,我正在尝试作为systemd服务运行。我已经按照说明创建了一个用户“connor”,并安装了IPFS。我将服务存储为~/.config/systemd/user/ipfs.service中的“ipfs.service”,如下所示: [Unit] Description=IPFS Daemon [Service] Type=simple ExecStart=/usr/local/bin/ipfs daemon ExecStop=

我有一个运行Ubuntu16.04.1x64的DO droplet,我正在尝试作为systemd服务运行。我已经按照说明创建了一个用户“connor”,并安装了IPFS。我将服务存储为~/.config/systemd/user/ipfs.service中的“ipfs.service”,如下所示:

[Unit]
Description=IPFS Daemon

[Service]
Type=simple
ExecStart=/usr/local/bin/ipfs daemon
ExecStop=/usr/bin/pkill ipfs
Restart=always
User=Connor

[Install]
WantedBy=default.target
奇怪的是,如果我运行systemctl--user start ipfs,它就会正常启动。但是,运行systemctl--user daemon reload,然后 systemctl——用户启用ipfs我得到错误:

无法执行操作:没有此类文件或目录


但是,如果我运行systemctl enable/home/connor/.config/systemd/user/ipfs.service-f,它运行得很好。我可以重新启动并运行IPFS命令。不过,我想以用户的身份运行它,也希望了解我做错了什么

请检查您是否正在使用
connor
user执行命令,您可以运行
whoami
查看执行命令的用户。(使用sudo运行命令会将用户更改为
root

此外,我看到服务文件中的用户是大写的(Connor而不是Connor),这可能会带来其他问题,而且不需要,因为像用户守护进程这样的简单配置是有效的

请查找以下我用于ipfs守护程序的配置(不带User=和不同的Restart=,因为Restart=在启动守护程序时总是给我带来问题):


您是否使用
connor
user执行命令?请注意,使用sudo执行命令可能会将用户更改为
root
[Unit]
Description=IPFS daemon
After=network.target

[Service]
ExecStart=/usr/local/bin/ipfs daemon
Restart=on-failure

[Install]
WantedBy=default.target