Syncthing
Continuous file synchronisation between devices.
Syncthing keeps a folder in sync between two or more devices directly, without going through a third-party server. Each device is identified by a public key fingerprint, and folder access is explicitly approved by the receiver. Synchronisation is two-way by default but can be configured as one-way, with conflict resolution that preserves both versions when two devices change the same file.
The synchronisation algorithm chunks each file at fixed boundaries and exchanges only the differing chunks, similar in spirit to rsync but adapted for an always-on peer-to-peer network. NAT traversal happens through the Syncthing infrastructure (relay servers run by the project) when direct connections aren't possible.
Jakob Borg started Syncthing in 2013 (originally as Pulse), and the Syncthing Foundation now coordinates development. The project is MPL-2.0. It is the leading self-hosted alternative to Dropbox-style services for ad-hoc personal sync — files stay on your devices and on any optionally-included peer-to-peer relay rather than on a corporate cloud.
Install
Debian/Ubuntu: sudo apt install syncthing Fedora/RHEL: sudo dnf install syncthing Arch: sudo pacman -S syncthing macOS: brew install syncthing
Authors
- Syncthing Foundation and contributors