I have multiple machines, and would like to syncronised some folders between them. I’d like it if any change on any machine, would sync to all other machines — and obviously by extension — all those other machines sync their changes back.
Let’s say there are machines A, B, and C, and for the sake of simplicity just folder-A. I’ve set A, B, and C to share folder-A with each other, i.e. A shares folder-A with A and B, B shares folder-A with A and C, and so on:
┌──────┐ ┌──────┐
│ ◄─────────────────┤ │
│ A │ │ B │
│ ├─────────────────► │
└▲───┬─┘ └─▲──┬─┘
│ │ │ │
│ │ │ │
│ │ │ │
│ │ │ │
│ │ │ │
│ │ │ │
│ │ │ │
│ │ │ │
│ │ │ │
┌┴───▼─┐ │ │
│ ├───────────────────┘ │
│ C │ │
│ │◄─────────────────────┘
└──────┘
This looked as if it was working, but I noticed that every so often one of the machines would think that folder-A was out of sync, and start to re-download all the files again. This happens even if not even a single file has changed in folder-A. Looking into the details, it showed for example that the node B had a newer version of the file (again, the files haven’t actually changed).
Am I right in thinking that I’m going about things wrong, and the best way to achieve what I want is to have a central always-online node acting as a kind of server or single source of truth, to which all the other nodes sync to?
┌────────┐ ┌─────────┐ ┌────────┐
│ │ │ │ │ │
│ │ │ │ │ │
│ A │ │ B │ │ C │
│ │ │ │ │ │
└─┬──▲───┘ └─┬───▲───┘ └──┬──▲──┘
│ │ │ │ │ │
│ │ │ │ │ │
│ │ │ │ │ │
│ │ │ │ │ │
│ │ │ │ │ │
│ │ ┌─▼───┴───┐ │ │
│ │ │ │ │ │
│ └────────┤ ◄───────┘ │
│ │ S │ │
└───────────► ├──────────┘
└─────────┘
3 posts - 3 participants