Syncthing dry-run on two pre-populated huge folders

In my New User story I talked about initializing my syncs and some worries about what ST might do that motivated a request for a dry run capability. I have 700 GB Music folders on my Synology NAS and my media server (MX Linux). They are “identical” sets of folders with .mp3, .flac and .jpeg/.png files. One set contained a lot of hidden “@eaDir” folders that I understand was used by the Synology DSAudio app that I tried out once. They are gone now. I now use Subsonic/Airsonic via a web browser. Subsonic runs on Synology and Airsonic on media server, each with their own Music folders which are “identical”. These folders are large enough that if something went sideways after setup, my Synology will run out of disk space and my media server will slow to a crawl due to CPU maxing out (based on prior experience with ST). So I would like to make a comparison of everything that might impact ST, including file contents, tags, permissions, owner, timestamps, etc. I looked for something like cmp or diff, but those don’t seem to boil down the results very well. I am not sure I would understand the output or if these tools will check everything that ST notices. After reading some more posts, I find that there is a sort of dry-run capability in ST. Set up both folders as “send only” and ST will exchange metadata but no files. Then if I set one side to “receive only” the send side will modify the receive side to sync-up.

Summary: Could I do a safe sync of two 700 GB music folders by setting both sides to “send only” and then if the metadata looks reasonable, set one side to “receive only”?

I could do a full backup to a USB drive and then delete the folder on the Synology and start ST from scratch.

Do you have a better suggestion?

Both sides being send only won’t sync anything, nor will it merge the metadata I think.

OP Update: The dry-run was successful but not fruitful. Every folder and file was declared out-of-sync and overriding changes just pushed out-of-sync to the other end.

I will save the files on the Synology as a backup and create new folders from the media computer. I will switch Subsonic over to the new folders and have fully synced music folders. I can then delete the backups and backup to the cloud.

I’ve explained that this is exactly what will happen. The only way to “merge” stuff is to accept one of the sides changes.

The dry run is just telling you that everything is different potentially because of metadata (timestamps, permissions) even if file content is the same, and no side is allowed to accept new metadata (and data) because both sides are send only.

I’m saying that both-send-only is no substitute for a real dry-run capability.

I agree, but rsync with --archive --dry-run achieves the same result, so not sure why we need to reimplement the wheel for a rare usecase?

I researched your response and found the “human readable” option in rsync, which together with dry-run (-n) does do a pretty good job of checking sameness. I used these options: -anihv This verified what I needed to know, that the files themselves were the same content and number on each side. They differed in permissions and time-stamps.