Skip to content

Syncthing — Overview

🟢 tested

Up to date 2026-05

Syncthing is an open-source continuous file synchronization tool. It works peer-to-peer, needs no central server, and supports encrypted relay nodes.

Install

Debian / Ubuntu

# Add Syncthing apt repository
curl -o /usr/share/keyrings/syncthing-archive-keyring.gpg \
  https://syncthing.net/release-key.gpg
echo "deb [signed-by=/usr/share/keyrings/syncthing-archive-keyring.gpg] \
  https://apt.syncthing.net/ syncthing stable" \
  | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt update && sudo apt install syncthing

Run as a systemd user service (recommended — no root, data stays in home dir):

systemctl --user enable --now syncthing

The GUI is available at http://127.0.0.1:8384 after starting.

Docker

See Encrypted relay for a complete Docker Compose setup.

Key concepts

Term Meaning
Device ID 63-char identifier for a node (shown in Syncthing GUI → Actions → Show ID)
Folder A directory shared between devices
Send Only Source device — does not accept remote changes
Receive Only Mirror device — does not push local changes
Receive Encrypted Stores only encrypted blobs; cannot read data

Device pairing

  1. On each node: open GUI → Actions → Show ID → copy the Device ID
  2. On source: Add Device → paste ID of target
  3. On target: accept the incoming connection request
  4. Share folders as needed (see role-specific bricks)

Roles used in these docs

source       →  sends folders (Send Only or normal)
relay        →  stores encrypted blobs (Receive Encrypted)
secondary    →  holds readable mirror (Receive Only)

See Encrypted relay and Hot spare for details.


← Building Bricks · Syncthing — Config Backup →

tf5-7hh · v2026-05-16 · Export created: 2026-06-11 15:08 UTC