Although syncthing has a rescan button, sometimes it is necessary to trigger a full rescan. A most common error message is the following:
[GRXBW] 17:53:20 INFO: Puller (folder "nibs", file "Images/Open/wall.png"): dst stat dir: stat /Users/nibs/Images/Open/: no such file or directory
In order to do this, the
index directory must be deleted:
|Operating System||Folder Location|
After the removal of the file, restart syncthing and it will perform a full rescan of the folders.
The following sync patterns will prevent synchronising items that have a local state and they are best used for synchronising user home folders.
// ignore dot files .** // ignore folders Library/** Desktop/** Public/** Downloads/** Applications/** Music/iTunes/** AppData/**
// include folders !AppData !Contacts !Documents !Favorites !Music !Pictures !Videos // ignore all the rest *
The following files are junk, temporary, trash or state files that should generally not be synchronised:
// Firefox Downloads *.part // Chrome Downloads *.crdownload // Safari Downloads *.download // Temporary / Backup *~ .*.swp *.pst ~* *.tmp *.bak // OSX .DSSTORE? .DS_Store .Spotlight-V100 .Trashes .Trash Icon? ._* .TemporaryItems // Linux .directory .Trash-*. // Windows desktop.ini ehthumbs.db Thumbs.db $RECYCLE.BIN // BTSync .sync *.bts *.!Sync .SyncID .SyncIgnore .SyncArchive *.SyncPart *.SyncTemp *.SyncOld // Synology @eaDir
A different listening address and port can be set for syncthing by editing the
config.xml file (usually to be found under the user's home directory at
The relevant part of code that refers to the web-interface is the following:
<gui enabled="true" tls="false"> <address>127.0.0.1:8384</address> <apikey>pBiQ3691PGcxqeOSLz101qML0188H1P5</apikey> </gui>
127.0.0.1 is the listening address and
8384 is the port that syncthing listens on.
Unfortunately, syncthing is unbelievably inefficient on most platforms such that is consumes a very large amount of CPU and RAM. Since RAM can be considered in most personal circumstances relatively cheap, the CPU consumption is relatively prohibitive, especially if you are running syncthing on highly optimised and minimal systems. For example, running syncthing (at version v0.11.25, at the time of writing) on an Macbook Air will keep your CPU constantly at about 20-30%. Since this is rather much, one can use
cpulimit to forcibly allow syncthing to only use up an agreeable amount of CPU.
cpulimit, first install it via homebrew as you are used to:
brew install cpulimit
Assuming that syncthing is already installed, you will find the launcher in
First, change directory to the launch file:
and stop syncthing by typing:
launchctl unload homebrew.mxcl.syncthing.plist
homebrew.mxcl.syncthing.plist with your favourite editor to change some things. Find the subsection
<key>ProgramArguments</key> <array> <string>/usr/local/opt/syncthing/bin/syncthing</string> <string>-no-browser</string> <string>-no-restart</string> </array>
and change it to this:
<key>ProgramArguments</key> <array> <string>/usr/local/bin/cpulimit</string> <string>--limit=5</string> <string>/usr/local/opt/syncthing/bin/syncthing</string> <string>-no-browser</string> <string>-no-restart</string> </array>
/usr/local/bin/cpulimitis the path to the
cpulimitbinary installed by homebrew.
–limit=5means that only CPU consumption is allowed at any time for
syncthingand all child processes.
and the rest are default launch parameters for syncthing.