I’m still getting up to speed with testing Syncthing so this is definitely a “living post” (expect edits) and any input from existing users would be appreciated! This post is a Wiki, so feel free to add / fix anything you deem necessary.
Syncthing Summary
Syncthing (https://syncthing.net/) is an mutli-platfrom (Windows, Linx, Mac, Android, etc.) Open Source P2P (person-to-person) tool for syncing files between multiple devices.
Backup tool (*Per Syncthing docs “Syncthing is not a great backup application because all changes to your files (modifications, deletions, etc.) will be propagated to all your devices. You can enable versioning, but we encourage the use of other tools to keep your data safe from your (or our) mistakes.”
x
Deduplication
x
*
Cloud destinations supported (*Clouds visible as local mount points MIGHT work)
*
x
Peer-to-peer destinations supported (*Peers visible as local mount points or accessible via VPN or SSH routing MIGHT work)
“Real time” scanning (Syncthing defaults to scans every 60 seconds but DOES support real time)
*
x
One-to-many copies (*Duplicati can do it but requires multiple jobs)
x
x
CLI (Command Line Interface) available
x
x
Web based UI
x
Application based UI (third party GUIs have been developed for the likes of Linux, Windows, and Android)
x
*
Supports UAT (*Syncthing handles some permissions)
x
x
Files handled in smaller blocks to reduce bandwidth on file changes
It should be pointed out again that while Syncthing does support versioning, it does so by making a duplicate copy of the file with a timestamp. This means if you make a 1k change to a 200MB file, Duplicati will (by default) need ~1k more space at the destination while Syncthing will need 200MB (for a full copy of the file).
I’m a very heavy user of Syncthing and love it, but it’s missing a few significant features because it’s a sync tool and not a backup tool that ruled it out pretty fast for me. In addition to the things you’ve already documented (no dedup, each version of files is a full copy so eats disk space quickly) here are a couple of others to think about:
The remote location has full access to all of your files and data, so you have to completely trust it. This isn’t bad if computers on both ends are yours, but doesn’t work well if it’s friends/family/etc.
It does have versioning, but if something happens you can’t restore a file without having access to the filesystem on the remote machine as the original files will be in a special “versions” folder on the destination and won’t exist locally any longer.
I’m actually thinking of putting together a how-to for Duplicati + Syncthing to replicate CrashPlan’s P2P feature. Both your points are taken care of since Duplicati takes care of versioning and encryption.
I just need to put together a test setup to simulate a local Duplicati storage (and Syncthing source) failure so I can see how convoluted the recovery will be.
Though TBH what I’d REALLY like is to see Duplicati take in Syncthing’s partner finding & firewall busting mixed with an internal SFTP server.
I would not compare both. Both tools serve different goals. Syncthing syncs (but if you do it one way you are kinda doing a backup) and duplicati backups.
I run both. PC to NAS via syncthing. And phone to NAS to pc via synching. I have full access to my files on the NAS, so it’s my personal ‘cloud’. Backup NAS to cloud via duplicati.
I agree, but when I first heard of Syncthing I wasn’t so sure. That’s why I figured I’d “compare” them - so other new users could get the basics of how it does something different than Duplicati without them having to read through Syncthing’s thorough documentation.
It sounds like maybe I didn’t do a good enough job odd getting that across…
I read your post too early in the morning, without my coffee…
I love syncthing, and I love duplicati. Both do an excellent job for what they are designed for.
Not sure if syncthing can sync 2 folders on the same device. If that would be possible, it can be used to get some redundancy in your backups. But it would also mean both (cloud)-locations should be mounted, which is an extra risk.
Syncthing uses end-to-end encryption during transfer. You could use Syncthing on your phone to keep it in sync with another device, like a PC or NAS. Then use Duplicati on that PC or NAS to do actual backups of that data.
Edit - sorry, I just realized from reading your other thread that you want to back up TO your phone. I don’t know how practical this is to be honest.
lol i don’t blame you. everything i lookup is phone to pc. i completely understand how odd it is to backup pc to phone. i simply don’t use my phone often and happen to have lots of free storage there
Hello @Tobey, did you try Resilio Sync? (it was called bittorent sync a few years ago). With free version you can sync multiple folders and thanks to the archive function “back up data” to the phone