I have a NAS running two separate Syncthing instances: one for me and one for my partner. Each instance has its own configuration, device list, ports, and folders. This works well for our personal folders.
We also have a common “Family” folder on the NAS. I am considering configuring both Syncthing instances on the NAS to point to the same physical folder path, for example:
Instance A / me -> /volumeX/Family
Instance B / partner -> /volumeX/Family
The idea is that my Syncthing instance would sync this folder with my own devices, while my partner’s Syncthing instance would sync the same NAS folder with her own devices. The two Syncthing instances would not share the same remote devices. (I sync this folder on my own computer and phone, and so she does on her own)
So effectively, the NAS folder would act as a shared local bridge between two separate Syncthing setups.
My questions are:
Is this configuration supported or strongly discouraged?
What are the risks if two Syncthing instances index and write to the same folder at the same time?
Could this cause issues with .stfolder, .stignore, .stversions, conflict handling, or the internal Syncthing database?
If we make sure that both users mostly write to separate subfolders inside the shared folder, does that reduce the risk in any way?
Are there any specific settings that would make this safer, such as folder type, scan interval, filesystem watcher, versioning, ignore patterns, or permissions?
I understand that a cleaner approach might be to use a single Syncthing instance for the Family folder and connect both users’ devices to it. However, I am trying to avoid extra complexity on the client side and would prefer to keep each user’s Syncthing setup separate if possible.
I would appreciate feedback from people who know Syncthing internals or have run a similar setup.
There’s nothing inherently problematic with this type of setup, it can work fine. Changes by one instance will be picked up as local changes by the other instance. Versioning can be enabled/disabled on either or both as you require.
The one actual “conflict” is for .stignore which you cannot have individual between the two instances, they will always need to use the same ignore patterns.
I’m surprised to read this reply. I though running multiple Syncthing instances on the same data source was a recipe for disaster. My intel is probably outdated, as @calmh knows what he is talking about. Good to know.
It does makes me wonder why @Vadorequest went for this setup, instead of a single Syncthing instance on his NAS, just not sharing all folders to all user.
Agreed, it’s more complex this way.
But also more secure.
The 2 Syncthing services won’t share the same access (UNIX group/user).
Mine can’t access her files. And vice-versa.
Config isn’t shared, she can’t break mine, and vice-versa.
Otherwise, you’re essentially building a backdoor with a “super” software that can just access anybody’s files on the NAS and resync them silently from the NAS, elsewhere.