Você está perdendo que o seu gerenciamento de serviços por usuário não se inicia no bootstrap na configuração padrão. Ele inicia quando você faz o logon pela primeira vez, a consequência de um gancho do gerenciador de serviços no sistema de login.
Eu estou tentando iniciar o servidor VNC no systemd no modo de usuário automaticamente após a inicialização. Usando o Arch Linux sendo executado como máquina virtual.
O servidor VNC é o Tiger VNC:
$ pacman -Qs vnc
local/tigervnc 1.9.0-1
Suite of VNC servers and clients. Based on the VNC 4 branch of TightVNC.
/home/raspi/vnc.service
:
[Unit]
Description=Remote desktop service (VNC)
[Service]
Type=simple
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :1 > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver :1 -geometry 1920x1080 -alwaysshared -fg -name remote
ExecStop=/usr/bin/vncserver -kill :1
[Install]
WantedBy=default.target
Linger está ativado:
$ loginctl show-user raspi | grep -i linger
Linger=yes
Instalado com:
$ systemctl --user enable /home/raspi/vnc.service
Created symlink /home/raspi/.config/systemd/user/default.target.wants/vnc.service → /home/raspi/vnc.service.
Created symlink /home/raspi/.config/systemd/user/vnc.service → /home/raspi/vnc.service.
Iniciado com:
$ systemctl --user start vnc.service
Eu posso iniciá-lo e conectar-me a ele, mas ele não é iniciado automaticamente quando o sistema é inicializado. Eu tenho que fazer login e executar systemctl --user start vnc.service
manualmente. O que eu sinto falta?
Tags systemd