Korbin is a Linux system administrator who spends most of his time in a terminal figuring out how things actually work. Over the last decade he's written hundreds of articles about Linux configuration, troubleshooting weird problems, and using open-source tools in the real world.
He also works a lot with Windows systems and networking, especially in mixed environments where things don't always behave the way the documentation says they should. Writing things down is how he makes sense of it all and hopefully saves someone else a few hours.
The best software is the kind that you can set up once and forget about. One of the best examples I have is Syncthing. I installed it on a few of my devices about a year ago and haven't needed to reconfigure it since the initial setup. I'm still using it every day; I just don't open it.
There are plenty of options for file sync software. Some of the most popular choices are Google Drive, OneDrive, and Dropbox. And they work fine. I've used them. But inevitably, there's always something to tweak or troubleshoot. Syncthing has been less maintenance for me (zero, actually), which is the biggest selling point for any piece of software.
Syncthing keeps files in sync across devices
With no cloud account required
You can't quite compare Syncthing to cloud services because the core model is different. Syncthing is peer-to-peer software, meaning devices talk directly to each other rather than through a company's centralized cloud. There are pros and cons to that approach. On the one hand, you don't need a cloud account or pay a subscription fee. On the other hand, you're in charge of every device, so it's your job to make sure that all systems are reachable and that your files are backed up.
Setup is pretty painless because Syncthing handles most of it. On my LAN, devices found each other instantly without any manual configuration. For devices that aren't on the same network, Syncthing uses relay servers to connect them. All file transfers are still encrypted end-to-end, so there's no risk of those servers snooping on any of your files.
When a file changes, Syncthing only sends the updated blocks of it to the other devices that it's set to synchronize with. It uses the same delta-transfer method that rsync employs, which is what makes it so fast. In other words, appending new data to a large file won't spark a re-transfer of the whole file — only the changed data.
I have four devices sharing data with each other
They all have the same files, all the time
For my setup, Syncthing runs on four different devices, and keeps a single folder in sync between them. That includes my Windows desktop, Windows laptop, a NAS server running Ubuntu, and an HTPC hooked up to my TV. The folder is configured as receive-only on the HTPC, meaning that it can't write changes to the shared folder. On the other three devices, you can read data from the shared folder, but you can also add new files. I just don't need the two-way transfers on the HTPC, since all it usually does is play video files.
One of the reasons I never think about Syncthing is because it just runs as a background service on all my systems. On Windows, I know it's running because I can see the icon in my taskbar. My Ubuntu server doesn't have a GUI, but it automatically starts the relevant systemd service on boot. I don't need to manually start the background service or open the app unless I need to configure something. My setup is pretty straightforward with only one shared folder, so I haven't needed to make any changes.
The only hiccups (if I can even call them that) I've encountered are when an offline device changes a file, and those changes conflict with another copy when it finally syncs. That has happened a handful of times over the past year, but Syncthing handles it pretty well. Rather than picking only one winner and overwriting the other file, it'll save both of them, with one copy bearing a .sync-conflict file extension. If that happens, I check out both files, decide which one to keep, and get rid of the other. It's an elegant way to ensure you don't lose either file, and so far I haven't.
Cloud storage still has two nice features
But I wouldn't necessarily call them "advantages"
A lot of people reach for cloud storage out of convenience alone. The fact that it can keep a shared folder in sync across several devices is sort of a byproduct of its main service, which is to store files in the cloud. It can be handy to have another copy of files in the cloud, but I'd rather opt out of that and just keep the syncing function, so Syncthing works better for me. My files are already on four devices anyway, so I don't need them on a company's server for a fifth location.
Cloud providers also offer more user-friendly installation and setup. A better audience for Syncthing is the DIY and home-server crowd. It fits in perfectly with a slew of other open-source, self-hosted services that my home lab runs. That's not to say that it's too complicated for everyday users, though. But the initial setup demands a bit more from you than, say, Dropbox. You need to configure shared folders and permissions, make sure the devices can reach each other (firewalls and NAT rules can get in the way), and you still have the onus of taking regular backups, since file syncing is not a total backup strategy by itself. After the first-time setup, it's a breeze.
Apps I forget about are the best
My favorite thing about Syncthing is that I don't ever need to interact with it directly. It silently does its job in the background, keeping a folder synchronized across various devices, and I don't need to do anything extra. If you're looking for a seamless way to transfer files between your devices, Syncthing is worth setting up.
Syncthing
- Windows, macOS, Linux
Syncthing keeps a shared folder in sync across multiple devices for free.





