Hi !
I have syncthing running on my linux server machine with folder shared as “send only”.
and I have windows client machine with folder in “receive only” mode.
the main idea is that client must have actual files from server. BUT it also must have possibility to start sync proccess any time he thinks that something has been changed on server
I thought that client rescan button works exact this way…but seems like it doesn’t.
The initial sync went fine right after I shared folder on server
I made some changes on source folder on server and pressed rescan button on client, but nothing happened. My local folder has not been synced and is still in “up to date” state though there some new files on source folder on the server…
my local folder is syncing only when I press rescan button on server GUI.
this is not normal I think…
I want that client could start rescan and get updates just pressing rescan button…but it seems like this feature does not work…
If what is there doesn’t work for what you want to do, then probably syncthing is not the right software for you, regardless of what seems logical to you, it’s just how it works.
well so please explain why you placed “rescan” button on destination side ? on folder that is set to “receive only” mode ? and it is active…but does nothing…maybe you find it very logical…
and I’d like to repeat again:
It would be NICE if users could invoke sync process from their GUI on their folder which is set to receive files …
what is the problem ? two hosts communicate to each other and I don’t think that this can not be implemented…
the feature “sync on demand” must be present for both sides - for host that shares folder and for the host that reads this shared folder - this is obvious…
and saying that it is “not software for you” and “regardless what seems to you” is not very productive…I really like syncthing and it is very promising solution … but you’d better listen to things that users say and what they ask for…but you prefer to send them to hell instead…
Syncthing is continuous synchronization software, not on demand, and rescan button is not “and now download files” button.
Rescan button on receive only side is to detect accidental changes that receive only side has done locally, in order to provide an opportunity to revert them.
I agree that the discussion is not very productive. I’m only trying to explain what the software does, telling us what you want it to do doesn’t suddenly change what the software has been made to do, even if that doesn’t align with the goals of the software.
As far as I understand, you want software that downloads stuff (on the receiving side) with a press of a button. I am saying syncthing is not the software for that, it downloads stuff continiously. How you chose to interpret that, its up to you.
You can probably achieve something like that by pausing unpausing folders, even if its a total crutch, and probably will take a while to start downloading (as its not exchanging metadata while paused).
well…If sync process is triggered with time counter, why can not it be triggered with user action from anywhere…looks like this is really complicated task for programmers…
anyway thanx for answers. I won’t bother you with this question any more.
It’s not a complicated task, it’s a conscious choice not to do that, as the software is supposed to be continuous. It’s not based on a timer either, it’s based on announcements from the other side.
It’s not necessary for the user/client to manually trigger a sync because Syncthing watches for filesystem changes and automatically sync as needed (for more details, check out the Understanding Synchronization page).
But if you really do want on-demand syncing, FreeFileSync, Unison, rsync or some other similar tool might be more applicable.
No, the [Rescan All] button triggers a scan of the local files rather than a sync.
I’m not aware of Syncthing having a [Resync] button, and if it did, it might not be very scalable because it would mean that a single node could arbitrarily cause all peered devices to suddenly start scanning, resulting in system loads on other devices that might be unwanted (e.g., imagine if there are millions of files involved).
Yes I Know what sync is…and also it scans folder detecting changes once per hour (may be changed in advanced tab)… this is what I meant by “trigger”
And of course it is not necessary to start sync by user demand - I think that this could be just an option.
I was about using syncthing just because it seems more user-friendly, but now I see that it is useless for my situation.
just in case how I supposed to use it:
I have a server which stores load of image files, that was rendered in 3d software and There is an artist, who take some of these images and compose it into a movie, but it take lot of time to work with this directly via network, so I decided to make a duplication of all files to local artist’s drive. And in general syncthing is ok for that, but…all of that files are updated constantly adding new files, and artist must have actual version at any given moment of time. I would not like to set sync to small period of time just to avoid server overload, because it does a lot of other stuff…so it would be enough for me to sync once per day. but when artist starts doing its job he must be able to get all updates before…that’s it…
and I don’t understand how syncthing detects filesystem changes…I put new files and folders in shared one, but there were no reaction for long time…only when I pressed rescan it started syncing…
anyway thanx for links and answers again…
…I need to another solution
Ah… if only your first post had included the details above.
Assuming computer animation with a typical 30 frames per second, that’s 1,800 image files per minute – or 300 files within Syncthing’s default 10-second delay after being informed of a new filesystem change for a watched directory.
First step is to get a count of how many files are in the directory that is being synced by Syncthing. It is very likely that you already know how, but for the benefit of others who might read this post:
find /path/to/some/folder -type f | wc
(First number on the left is the file count.)
Second step is to find out what your Linux system’s user limit is for file watches:
cat /proc/sys/fs/inotify/max_user_watches
If the file count in the first step is larger than the result from the second step, then you have a Linux configuration issue.
Syncthing uses the native filesystem change notification subsystem built into Linux, macOS, Windows and Android.
Syncthing basically asks the operating system to “watch” a file and/or directory and inform it when there has been a change.
If the operating system fails to inform Syncthing, then Syncthing must rely on the scheduled full scans (which defaults to once every 60 minutes).