Antes de instalar
Se recomienda iniciar el servicio con un usuario que no sea root, por lo tanto, lo primero que tenemos que hacer es crear el usuario llamado syncthing (u otro nombre), y asignamos una contraseña.
adduser syncthing
En mi caso voy a cambiar la carpeta home del usuario, entonces uso useradd en
vez de adduser.
useradd -g users -d /media/datos/syncthing -m -s /bin/bash syncthing
passwd syncthing
Actualizamos el sistema antes de empezar
apt update
apt upgrade
apt install syncthing
Ingresamos con el usuario que creamos.
su syncthing
Configuración
Ejecutar por primera vez y esperar hasta que muestre el ID del dispositivosyncthing
Después Salir con ctrl+c
Editar el archivo ~/.config/syncthing/config.xml, cambiar la ip 127.0.0.1 a 0.0.0.0. Tiene que quedar así
vim ~/.config/syncthing/config.xml
<gui enabled="true" tls="false" debugging="false">
<address>0.0.0.0:8384</address>
<user></user>
<password></password>
<apikey></apikey>
<theme>default</theme>
</gui>
Para que inicie automáticamente, crear el archivo y pegar lo siguiente.
vim /etc/systemd/system/syncthing@.service
[Unit]
Description=Syncthing - Open Source Continuous File Synchronization for %I
Documentation=man:syncthing(1)
After=network.target
Wants=syncthing-inotify@.service
[Service]
User=%i
ExecStart=/usr/bin/syncthing -no-browser -no-restart -logflags=0
Restart=on-failure
SuccessExitStatus=3 4
RestartForceExitStatus=3 4
[Install]
WantedBy=multi-user.target
Salimos del usuario synching para seguir com root.
Aumentar el límite de inotify para que funcione el observador del sistema de archivos
echo "fs.inotify.max_user_watches=204800" | tee -a /etc/sysctl.conf
Habilitar y arrancar el servicio
systemctl enable syncthing@syncthing.service
systemctl start syncthing@syncthing.service
systemctl status syncthing@syncthing.service
Si se configura para otro usuario.
systemctl enable syncthing@usuario.service
systemctl start syncthing@usuario.service
systemctl status syncthing@usuario.service