Getting started with local file sync — Syncthing vs. Unison?

Hello everyone. I’m new to Syncthing and Unison, and I just read the project overviews and FAQs as well as most of both documentations. I’m a little stuck in thinking everything through until the end, so maybe I could ask some of you for your advice and/or opinion.

Q: What do I want to achieve? A: Synchronized folders and files as well as symlinks. LAN-only preferred, no online/cloud, i.e. everything should, if possible, work without any internet connection whatsoever.

Q: How many and which devices are in use? A: Three, at least. We’re having three Mac devices in our network, as well as optionally a Raspberry Pi with optionally some storage attached that could serve as network storage (SSHFS, NFS, AFP, et cetera) and serve files between the Mac devices; also an Apple Time Capsule with 2 TB storage would be available.

Q: Is real-time synchronization necessary? A: Not really; it would be okay to be automating, i.e. auto-starting, the check/sync for example every hour. I think this is one of the main differences of Syncthing and Unison, that Unison needs to be “started” manually after making changes to files, and Syncthing just runs in the background and as soon as something is changed, the changes are propagated to all other devices?

Q: Are the devices used at the same time? A: Generally, I’d like to say no. In the very most cases the three Mac devices are not used at the same moment in time.

Q: Are all devices always-on? A: Not really. The Mac devices (old Macbook, new Macbook, Mac Mini) are often in sleep mode, I guess; the Raspberry Pi on my network is always-on, though.

In case I haven’t forgotten to write anything down, I think that’s all I have to say, i.e. am asking/looking for. Based on these demands, would you say that Syncthing or Unison would be the better way to go, and if you don’t mind, please elaborate why?

PS: I also just found out about git-annex, which also looks somewhat promising?

Thank you so much, everyone. :)

Syncthing would fit your need like a glove.

Q: What do I want to achieve? A: Synchronized folders and files as well as symlinks. LAN-only preferred, no online/cloud, i.e. everything should, if possible, work without any internet connection whatsoever.

It works for you “out of the box” regardless if your machines are on your LAN or not. If you REALLY want to, you can make it work ONLY on your LAN, but personally I don’t understand why anyone would want that.

Q: Are all devices always-on? A: Not really. The Mac devices (old Macbook, new Macbook, Mac Mini) are often in sleep mode, I guess; the Raspberry Pi on my network is always-on, though.

For trouble-free and conflict-free operation, at least one device should always be up.

2 Likes

Maybe not symlinks… Someone who knows, please step forward…!

1 Like

Syncthing synchronizes symlinks as-is, that is the link itself is synced but not followed. Windows has special treatment, but I think none of the devices involved here run Windows.

As Syncthing has no cloud (central storage) two devices always need to be online at the same time to allow sync. As already stated, the best way for asynchronous syncing is to have at least one always online device, that can do asynchronous relaying (e.g just another synchting instance, no special config neccessary).

Raspberry Pi’s are really low end though and may have trouble running syncthing on larger sets of data. What Pi is it specifically?

2 Likes

It’s a Raspberry Pi 3, Model B.

1 Like

Do not expect fast transfer over that raspberry, but depending on how much data you’re moving around daily it might work out for you. Syncthing does like some RAM and the raspberry doesn’t have that much, but it might work.

2 Likes

Do not expect fast transfer over that raspberry, but depending on how much data you’re moving around daily it might work out for you. Syncthing does like some RAM and the raspberry doesn’t have that much, but it might work.

Thank you for that advice!

1 Like

Would you recommend a local Raspberry Pi 4 with 4 GB or 8 GB of RAM, or rather e.g. a remote Virtual Private Server with ? vCPU and ? GB RAM?

Not sure if I could use SSD or HDD for storage, i.e. need to check how much e.g. 1 TB of SSD would be, I suppose it’s rather expensive.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.