Syncthing

General Information

  • Allows you to synchronize files between multiple devices.
  • Website: https://syncthing.net/ .
  • Synchronization occurs based on the file modification date.
  • There is support for synchronization at the block level, that is, with small changes in the file, only the changed blocks will be synchronized, and not the entire file.
  • Syncthing is actually a replacement for BitTorrent Sync (now Resilio Sync).

Application options

Installation

  • Gentoo:
emerge syncthing

Fedora:

dnf install syncthing

Debian:

apt install syncthing

Setting up Syncthing

Basic Commands

Creating a device ID, configuration files and default folder:

syncthing generate

Start synchronization:

syncthing --no-browser

Get device ID:

syncthing --device-id

You can get the ID from the configuration:

syncthing cli show system | jq .myID

Add another car:

syncthing cli config devices add --device-id $DEVICE_ID_OTHER

Share a folder with another machine:

syncthing cli config folders $FOLDER_ID devices add --device-id $DEVICE_ID_OTHER

Set to automatically accept folders from another machine:

syncthing cli config devices $DEVICE_ID_OTHER auto-accept-folders set true

View folder IDs:

syncthing cli config folders list

View folder identifiers from the configuration:

syncthing cli config dump-json | jq '.folders[] | .id'

View folder ID:

syncthing cli config dump-json | jq '.folders[] | select(.path == "/folder/path") | .id'