What exactly `systemctl --user enable SERVICE` means?
It makes the unit start on first login of a user, but for that corresponding unit file should have WantedBy = default.target
or something along the lines. Because when user instance of systemd
starts, it brings up the default.target
target.
systemctl --user enable SERVICE
will do nothing unless the related unit file has an [Install]
section. the [Install]
section lets systemd
know which symlinks to set up with enable
is used. From the docs:
Unit files may include an "[Install]" section, which carries installation information for the unit. This section is not interpreted by systemd(1) during runtime; it is used by the enable and disable commands of the systemctl(1) tool during installation of a unit.