I have a simple setup, one “local” and one “remote” device.
Both already had the same content, in one folder - about 3.5 TB of data.
I let both sides scan the folder in question and gave the same Folder ID on both sides.
But the Remote Device always shows the same: Syncing (1%, 3.43 TiB)
Also, ALL items are sown as “Out of Sync Items” for the Remote Device.
But there is no traffic at all, so nothing is syncing to the remote side.
Adding new content locally did indeed upload to the remote side, so it seems to work - but still, the locally shown state for the Remove Device is more than irritating and gives a bad feeling.
What can I do?
I read something about command line usage with “–reset-deltas” or something similar?
How to setup Syncthing for a folder on two devices that already contains the same content?
I mean, in a way that both local and remote device show that they are in sync and up to date.
And no arbitrary “Syncing” with ALL items shown as “Out of Sync Items” on the Remote Device.
Seems like a very basic type of usage for me, esp. when the content is too big for a complete remote sync.
I’m guessing more time is needed: this should just work.
What I mean is: The two Devices should each be scanning their shared Folders to determine the local state. They will then determine the Global Model (see Block Exchange Protocol v1 — Syncthing documentation) for each Folder, compare it to the Local Model that they built, and ask for any needed blocks.
So, if you give the two Devices long enough to finish scanning, they should end up not passing any data between them.
MacOS 15.2 on the local side, ExFAT file system on a fast 8TB SSD.
A Linux proxmox instance of Syncthing in a container on the remote side, EXT4 file system on a Seagate 16TB hard disk.
The files never change by themself, therefor I disabled automatic scanning and scheduled scanning on the local side - I rescan manually and this get’s successfully transferred to the remote side! So this works.
40Mbit upload on the local site, about 4,5 MB/s. Remote side is faster so that is not the problem.
I cannot access the remote at the moment but will try to post tomorrow!
Both sides had the same content from the beginning - and everything that I added locally got successfully uploaded!
Maybe it would help to force set both the devices to a 100% synced state and continue from there?
I mean, if this is possible.
Otherwise, I can only suspect that I did setup the whole thing in a wrong way.
The “failed items” are all macOS ._* files, which I now added to the ignore list. I tend to remove them regularly so that they could probably not be synced.
That remote folder screenshot shows the “problem”, doesn’t it? Square-quotes because there is no problem: You set the folder type to “receive-only”, and there are ~24k elements/3.5TiB of data that only exists on that device, which is indicated by the locally changed items. That corresponds directly with the out of sync items on the remote device in the first screenshot. That will never resolve itself by design/your config choice.
If that doesn’t help you resolve your use-case, you should start by stating your use case. Not in terms of config, but in terms of what you want to achieve.
If the data is the same, it’s probably metadata e.g. mod. time or permissions that differ. If you don’t care about permissions (you probably don’t gien sync between macos exfat and linux ext4), try if checking ignore permissions in the folder setting helps.
Danger zone, don’t just do this without understanding it - you may lose all your data:
If ignoring permissions doesn’t help and you are entirely sure you have all the data in the send-only folder and want to “reset”, you can use the red (hinthint) revert button. It will (try to) resolve the differences/out-of-sync items. Which for items only exist there, means deleting them.
Thanks for your reply, but I have “Ignore Permissions” already enabled - should be visible in the screen shot from the local device.
I would rather not use this “revert” button, exactly because we don’t understand the nature of the problem and I cannot risk loosing data on the remote site.
Therefore I asked how to setup Syncthing for such a situation…
I can delete folder and devices from Syncthing and start new - after fixing the minor differences (as I now excluded the macOS files, this should not happen again).
But HOW to set this up so that Syncthing works correctly?
Add the folder with the same Folder ID?
Then first scan on both sides.
And then finally add the remote device as target?
Anything else that needs to be done or a special sequence that is required?
Finally, I thought that I did that in exactly this way - but maybe I made a mistake (and forgot to exclude the macOS files)
I don’t see it on the receive-only folder though (I might be missing it)?
Do you have a backup of that data? Like a proper one, not related to syncthing that you did test restoring. If not, I’d stop syncthing and don’t do anything else until you have one.
Also can you please identify devices somehow - “remote” is ambigious, all devices are remotes to some other devices. As you hid identifying info, e.g. I used send-only and receive-only to identify them so far. It matters as e.g. here you say you can’t lose it “on the remote site” - if that is the send-only folder, then clicking revert on the receive-only folder cannot change the data on the send-only side. Actually regardless of receive-only, a send-only folder will never be changed by syncthing - that’s its purpose.
That’ depends on what “such a situation”/“this” is exactly. You use a combo of receive-only and send-only, that’s in itself overkill - they have an equivalent purpose, just acting on two different sides. This goes back to the earlier question: Explain what your use-case/requirements are please.
Besides potentially some performance changes, the order of these steps shouldn’t matter.
This isn’t backup, it’s a continuously synced copy of your data. If you mess up, a third party messes up or syncthing messes up, the mess will be replicated to your “backup”. Please (make them) create proper backups on that remote device, e.g. regular, automated and versioned with a program meant for backup. Using syncthing to sync your data to that remote/other persons device is perfectly fine, that’s what syncthing is for.
It is a local setting. So if permission changes occur on the remote device, they need to be ignored there. Start there, with some luck it helps
Also because it can’t be repeated enough: Please create actual backups as soon as possible.
I needed to create a second account, as the forum did does not allow to write more than 7 replies on the first day.
This is … a very strange idea and rule.
And contradictory, BTW.
On topic:
No, I have no way to create other backups and I am totally aware of what you are saying, being a long time professional Unix admin.
And there is no danger in doing it this way, as I have any local rescans disabled.
I only rescan after checking consistency for all files and directories and even checking checksums that I create locally and store them for comparison.
Those checksums will also be synced remotely so that I can check the remote consistency even without Syncthing.
I just need Synching to push my local changes to the remote site.
But being stuck at “Syncing 1% …” something is wrong
I just upped your “trust level”, so you should be able to use your original account again. For anyone else reading this: If you are ever in this or a similar situation, write a message to moderators and we’ll fix it.
Agreed, these new user restrictions get in the way every now and then - at the same time discourse is pretty good with preventing spam, so maybe that’s the tradeoff it takes.
Re backups:
I am still confused by those restrictions, but anyhow - I don’t need to understand. I’d still recommend another, better suited tool than syncthing, but in the end it’s your setup and I don’t need to understand
I’d start with ignoring permissions on both sides.
Then read again what “Revert local changes” does. As I don’t understand your setup I can’t be sure, but it seems to me that’s an ok/desirable action for the situation you are in.