How to set up as a system service

  1. Create the user who should run the service, or choose an existing one.

  2. (Skip if your distribution package already installs these files, see above.) From the git repository copy the syncthing@.service file into the load path of the system instance.

  3. Enable and start the service. Replace myuser with the Syncthing user after the @:

systemctl enable syncthing@myuser.service
systemctl start syncthing@myuser.service

How to set up as a user service

  1. Create the user who should run the service, or choose an existing one. Probably this will be your own user account.

  2. (Skip if your distribution package already installs these files, see above.) From the git repository copy the syncthing.service file into the load path of the user instance. To do this without root privileges you can just use this folder under your home directory: ~/.config/systemd/user/.

  3. Enable and start the service:

systemctl --user enable syncthing.service
systemctl --user start syncthing.service

Automatic start-up of systemd user instances at boot (before login) is possible through systemd’s “lingering” function, if a system service cannot be used instead. Refer to the enable-linger command of loginctl to allow this for a particular user.

Checking the service status

To check if Syncthing runs properly you can use the status subcommand. To check the status of a system service:

systemctl status syncthing@myuser.service

To check the status of a user service:

systemctl --user status syncthing.service