Syncthing on RaspberryPi

I am using v0.10.30 on my RPi with the OS OSMC. When restarting syncthing from the browser gui it takes minutes until I can access the webui again. In the meantime ST is consuming a lot of cpu. I have just added empty folders, hashing could not be the reason for this behaviour. Please improve performance on arm devices :smile:

Please improve arm devices to perform better :wink:

1 Like

good point :wink: but loading a webinterface should not get RPi on its limits

Just to let you know that I have the same problem running Syncthing on a Dual CPU (ARM) with 512KB RAM (It’s a WD My Cloud and was running WD firmware, but now it runs just Debian 7 [with no X server running] and Syncthing). It takes a long time to get itself up to date and the status shows “Unknown” for some time before it shows any progress percentages. It’s simply the lack of resources IMHO. I just leave it to finish. I have found that if I start adding/removing large numbers of files/folders before it knows everything is up to date I get the dreaded "Folder is not making progress… Pausing puller… " message, for which I have developed my own method to resolve (shudder from the devs here!)

Syncthing is nearly consuming 100% of the CPU. I would like to investigate the case but I don’t know where the logs are saved in linux. Syncthing is running for nearly for one week and all the time syncthing is consuming the cpu. Files are not synced problery and I guess the reason is the high cpu load. I already changed the parallelity to one.

The logs go to stdout, check the web UI to see if scanning is finished. If you have a lot of data, it will take a RPI a century to get that done.

Check the forum for workarounds (such as indexing on a powerful device and then moving the index on the RPI).

I have much less CPU usage on my RPi now that I have upgraded to v0.11.

Just tried it (v0.10.30) on RPi B (512MB) running Pidora (Fedora 20). SyncThing used 100% CPU for 30 seconds, the GUI was already responsive after 18 seconds. It used very little memory while it was CPU hogging. Pidora on RPi is known to perform 40% less than Raspbian based distributions.

All in all not a big deal.

I changed the start script in init.d;

DAEMON=/etc/syncthing/syncthing > /etc/syncthing/st.log

There is just an empty file created called st.log

All in all syncthing has to scan 30GB. Two folders have the status unkown the other actual

Well, I am sure it would work fine if you were to start it yourself. I am not sure how your init script works to comment.

This just declares a variable DAEMON and pipes the (empty) output to the log. You want the place where the $DEAMON variable is actually used to start syncthing, and redirect it there.

I also tried it as you said, same result. I will later try it to start it manually.

Next porblem: I have on both sides ignored a Folder: Name+Name

But the folder is synced… Does the “+” can make problems?

That shouldn’t be a problem, we even have a special test case for that. Perhaps you ignored after it was synced, hence it’s still there.

You’d have to provide the full path and the exact pattern for us to verify.

Can you move the indexes with v0.11? I might be missing something basic. Cheers

It should be fine, you just need to make sure you generate the index while having the same certificates (device ID) on both machines, and before you add any other devices.

root@raspi:/etc/syncthing# ./syncthing > sync.log

just gives

root@raspi:/etc/syncthing# cat sync.log
[monitor] 22:13:47 INFO: Starting syncthing
[MVWYV] 22:14:04 INFO: syncthing v0.11.0 (go1.4.2 linux-arm default) unknown-user@syncthing-builder 2015-04-22 00:37:18 UTC
[MVWYV] 22:14:04 INFO: My ID: XXXX
[MVWYV] 22:14:06 INFO: Starting web GUI on https://0.0.0.0:8080/

Thats all. Can’t troubleshoot with these infos :wink:

edit: ok now I get more infos / slow perfomance on RPi was the problem.

Wait for Finished scanning folder XYZ, at that point it should be usable.

Is it as simple as copying and pasting the device ID from the slow armv7 machine to the config.xml on the powerful amd64 machine?

You probably don’t need to fiddle with the keys and device ID:s actually… Just stop syncthing, copy over the index.v0.11.0.db directory, and start again. You must make sure that the contents of the folders on both sides are identical at this point, since that is what you are claiming by copying the index. Any missing files will be seen as deletes, and so on.

:exclamation: I haven’t actually tested this myself. Good luck!