Systemd 用户服务无法自动启动

Systemd 用户服务无法自动启动

这个问题已经以各种形式被问过很多次了,但似乎都没有任何建议起到作用。

我想在登录 GUI 后运行 syndaemon,但我总是必须手动启动它

$ systemctl --user status syndaemon.service
● syndaemon.service - Syndaemon Service
     Loaded: loaded (/home/tastywheat/.config/systemd/user/syndaemon.service; enabled; vendor preset: enabled)
     Active: inactive (dead)
$ systemctl --user start syndaemon.service
$ systemctl --user status syndaemon.service
● syndaemon.service - Syndaemon Service
     Loaded: loaded (/home/tastywheat/.config/systemd/user/syndaemon.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-04-11 00:33:54 CDT; 3s ago
   Main PID: 5032 (syndaemon)
     CGroup: /user.slice/user-1000.slice/[email protected]/syndaemon.service
             └─5032 /usr/bin/syndaemon -i 0.8 -R -t -k

似乎也没有尝试启动该服务(它只显示在这里,因为我手动启动了它)。

$ grep -ir syndaemon /var/log/syslog
Apr 11 00:33:54 xtrnmntr systemd[1068]: Started Syndaemon Service.

我也遵循了有关使用的建议loginctl enable-linger

$ find /var/lib/systemd/linger/
/var/lib/systemd/linger/
/var/lib/systemd/linger/tastywheat

而且我尝试了另一种修改方法logind.conf

$ grep -ir tastywheat /etc/systemd/logind.conf 
KillExcludeUsers=tastywheat

还有我的用户服务,以防万一:

$ cat ~/.config/systemd/user/syndaemon.service 
[Unit]
Description=Syndaemon Service

[Service]
ExecStart=/usr/bin/syndaemon -i 0.8 -R -t -k

[Install]
WantedBy=default.target

我想我不介意将这项服务移入,/etc/systemd但我不想sudo每次调整这个或其他用户服务时都要使用它。

相关内容