1SYNCTHING-CONFIG(5)                Syncthing               SYNCTHING-CONFIG(5)
2
3
4

NAME

6       syncthing-config - Syncthing Configuration
7

SYNOPSIS

9          $HOME/.config/syncthing
10          $HOME/Library/Application Support/Syncthing
11          %LOCALAPPDATA%\Syncthing
12

DESCRIPTION

14       New  in  version  1.5.0: Database and config can now be set separately.
15       Previously the database was always located in the same directory as the
16       config.
17
18
19       Syncthing  uses  a  single  directory to store configuration and crypto
20       keys.  Syncthing also has a database, which is often stored in this di‐
21       rectory  too.   The config location defaults to $HOME/.config/syncthing
22       (Unix-like), $HOME/Library/Application Support/Syncthing (Mac), or %LO‐
23       CALAPPDATA%\Syncthing (Windows). It can be changed at runtime using the
24       --config flag. In this directory the following files are located:
25
26       config.xml
27              The configuration file, in XML format.
28
29       cert.pem, key.pem
30              The device’s ECDSA public and private key. These form the  basis
31              for the device ID. The key must be kept private.
32
33       https-cert.pem, https-key.pem
34              The  certificate and key for HTTPS GUI connections. These may be
35              replaced with a custom certificate for HTTPS as desired.
36
37       csrftokens.txt
38              A list of recently issued CSRF tokens  (for  protection  against
39              browser cross site request forgery).
40
41       The database is stored either in the same directory as the config (usu‐
42       ally the default), but may also be located in one of the following  di‐
43       rectories (Unix-like platforms only):
44
45       • If  a  database  exists in the old default location, that location is
46         still used.
47
48       • If $XDG_DATA_HOME is set, use $XDG_DATA_HOME/syncthing.
49
50       • If ~/.local/share/syncthing exists, use that location.
51
52       • Use the old default location (same as config).
53
54       The location of the database can be changed using the --data flag.  The
55       --home  flag  sets both config and database locations at the same time.
56       The database contains the following files:
57
58       index-*.db
59              A directory holding the database with metadata and hashes of the
60              files currently on disk and available from peers.
61

CONFIG FILE FORMAT

63       The  following  shows  an  example of a default configuration file (IDs
64       will differ):
65
66       NOTE:
67          The config examples are present for illustration. Do not  copy  them
68          entirely  to use as your config. They are likely out-of-date and the
69          values may no longer correspond to the defaults.
70
71          <configuration version="37">
72              <folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
73                  <filesystemType>basic</filesystemType>
74                  <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
75                      <encryptionPassword></encryptionPassword>
76                  </device>
77                  <minDiskFree unit="%">1</minDiskFree>
78                  <versioning>
79                      <cleanupIntervalS>3600</cleanupIntervalS>
80                      <fsPath></fsPath>
81                      <fsType>basic</fsType>
82                  </versioning>
83                  <copiers>0</copiers>
84                  <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
85                  <hashers>0</hashers>
86                  <order>random</order>
87                  <ignoreDelete>false</ignoreDelete>
88                  <scanProgressIntervalS>0</scanProgressIntervalS>
89                  <pullerPauseS>0</pullerPauseS>
90                  <maxConflicts>-1</maxConflicts>
91                  <disableSparseFiles>false</disableSparseFiles>
92                  <disableTempIndexes>false</disableTempIndexes>
93                  <paused>false</paused>
94                  <weakHashThresholdPct>25</weakHashThresholdPct>
95                  <markerName>.stfolder</markerName>
96                  <copyOwnershipFromParent>false</copyOwnershipFromParent>
97                  <modTimeWindowS>0</modTimeWindowS>
98                  <maxConcurrentWrites>2</maxConcurrentWrites>
99                  <disableFsync>false</disableFsync>
100                  <blockPullOrder>standard</blockPullOrder>
101                  <copyRangeMethod>standard</copyRangeMethod>
102                  <caseSensitiveFS>false</caseSensitiveFS>
103                  <junctionsAsDirs>false</junctionsAsDirs>
104                  <syncOwnership>false</syncOwnership>
105                  <sendOwnership>false</sendOwnership>
106                  <syncXattrs>false</syncXattrs>
107                  <sendXattrs>false</sendXattrs>
108              </folder>
109              <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
110                  <address>dynamic</address>
111                  <paused>false</paused>
112                  <autoAcceptFolders>false</autoAcceptFolders>
113                  <maxSendKbps>0</maxSendKbps>
114                  <maxRecvKbps>0</maxRecvKbps>
115                  <ignoredFolder time="2022-01-09T19:09:52Z" id="br63e-wyhb7" label="Foo"></ignoredFolder>
116                  <maxRequestKiB>0</maxRequestKiB>
117                  <untrusted>false</untrusted>
118                  <remoteGUIPort>0</remoteGUIPort>
119              </device>
120              <gui enabled="true" tls="false" debugging="false">
121                  <address>127.0.0.1:8384</address>
122                  <apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
123                  <theme>default</theme>
124              </gui>
125              <ldap></ldap>
126              <options>
127                  <listenAddress>default</listenAddress>
128                  <globalAnnounceServer>default</globalAnnounceServer>
129                  <globalAnnounceEnabled>true</globalAnnounceEnabled>
130                  <localAnnounceEnabled>true</localAnnounceEnabled>
131                  <localAnnouncePort>21027</localAnnouncePort>
132                  <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr>
133                  <maxSendKbps>0</maxSendKbps>
134                  <maxRecvKbps>0</maxRecvKbps>
135                  <reconnectionIntervalS>60</reconnectionIntervalS>
136                  <relaysEnabled>true</relaysEnabled>
137                  <relayReconnectIntervalM>10</relayReconnectIntervalM>
138                  <startBrowser>true</startBrowser>
139                  <natEnabled>true</natEnabled>
140                  <natLeaseMinutes>60</natLeaseMinutes>
141                  <natRenewalMinutes>30</natRenewalMinutes>
142                  <natTimeoutSeconds>10</natTimeoutSeconds>
143                  <urAccepted>0</urAccepted>
144                  <urSeen>0</urSeen>
145                  <urUniqueID></urUniqueID>
146                  <urURL>https://data.syncthing.net/newdata</urURL>
147                  <urPostInsecurely>false</urPostInsecurely>
148                  <urInitialDelayS>1800</urInitialDelayS>
149                  <restartOnWakeup>true</restartOnWakeup>
150                  <autoUpgradeIntervalH>12</autoUpgradeIntervalH>
151                  <upgradeToPreReleases>false</upgradeToPreReleases>
152                  <keepTemporariesH>24</keepTemporariesH>
153                  <cacheIgnoredFiles>false</cacheIgnoredFiles>
154                  <progressUpdateIntervalS>5</progressUpdateIntervalS>
155                  <limitBandwidthInLan>false</limitBandwidthInLan>
156                  <minHomeDiskFree unit="%">1</minHomeDiskFree>
157                  <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
158                  <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
159                  <tempIndexMinBlocks>10</tempIndexMinBlocks>
160                  <unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
161                  <trafficClass>0</trafficClass>
162                  <setLowPriority>true</setLowPriority>
163                  <maxFolderConcurrency>0</maxFolderConcurrency>
164                  <crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
165                  <crashReportingEnabled>true</crashReportingEnabled>
166                  <stunKeepaliveStartS>180</stunKeepaliveStartS>
167                  <stunKeepaliveMinS>20</stunKeepaliveMinS>
168                  <stunServer>default</stunServer>
169                  <databaseTuning>auto</databaseTuning>
170                  <maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
171                  <announceLANAddresses>true</announceLANAddresses>
172                  <sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
173                  <connectionLimitEnough>0</connectionLimitEnough>
174                  <connectionLimitMax>0</connectionLimitMax>
175                  <insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
176              </options>
177              <remoteIgnoredDevice time="2022-01-09T20:02:01Z" id="5SYI2FS-LW6YAXI-JJDYETS-NDBBPIO-256MWBO-XDPXWVG-24QPUM4-PDW4UQU" name="bugger" address="192.168.0.20:22000"></remoteIgnoredDevice>
178              <defaults>
179                  <folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
180                      <filesystemType>basic</filesystemType>
181                      <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
182                          <encryptionPassword></encryptionPassword>
183                      </device>
184                      <minDiskFree unit="%">1</minDiskFree>
185                      <versioning>
186                          <cleanupIntervalS>3600</cleanupIntervalS>
187                          <fsPath></fsPath>
188                          <fsType>basic</fsType>
189                      </versioning>
190                      <copiers>0</copiers>
191                      <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
192                      <hashers>0</hashers>
193                      <order>random</order>
194                      <ignoreDelete>false</ignoreDelete>
195                      <scanProgressIntervalS>0</scanProgressIntervalS>
196                      <pullerPauseS>0</pullerPauseS>
197                      <maxConflicts>10</maxConflicts>
198                      <disableSparseFiles>false</disableSparseFiles>
199                      <disableTempIndexes>false</disableTempIndexes>
200                      <paused>false</paused>
201                      <weakHashThresholdPct>25</weakHashThresholdPct>
202                      <markerName>.stfolder</markerName>
203                      <copyOwnershipFromParent>false</copyOwnershipFromParent>
204                      <modTimeWindowS>0</modTimeWindowS>
205                      <maxConcurrentWrites>2</maxConcurrentWrites>
206                      <disableFsync>false</disableFsync>
207                      <blockPullOrder>standard</blockPullOrder>
208                      <copyRangeMethod>standard</copyRangeMethod>
209                      <caseSensitiveFS>false</caseSensitiveFS>
210                      <junctionsAsDirs>false</junctionsAsDirs>
211                      <syncOwnership>false</syncOwnership>
212                      <sendOwnership>false</sendOwnership>
213                      <syncXattrs>false</syncXattrs>
214                      <sendXattrs>false</sendXattrs>
215                  </folder>
216                  <device id="" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
217                      <address>dynamic</address>
218                      <paused>false</paused>
219                      <autoAcceptFolders>false</autoAcceptFolders>
220                      <maxSendKbps>0</maxSendKbps>
221                      <maxRecvKbps>0</maxRecvKbps>
222                      <maxRequestKiB>0</maxRequestKiB>
223                      <untrusted>false</untrusted>
224                      <remoteGUIPort>0</remoteGUIPort>
225                  </device>
226              </defaults>
227          </configuration>
228

CONFIGURATION ELEMENT

230          <configuration version="37">
231              <folder></folder>
232              <device></device>
233              <gui></gui>
234              <ldap></ldap>
235              <options></options>
236              <remoteIgnoredDevice></remoteIgnoredDevice>
237              <defaults></defaults>
238          </configuration>
239
240       This is the root element. It has one attribute:
241
242       version
243              The config version. Increments whenever a change  is  made  that
244              requires migration from previous formats.
245
246       It  contains  the  elements described in the following sections and any
247       number of this additional child element:
248
249       remoteIgnoredDevice
250              Contains the ID of the device that should be ignored. Connection
251              attempts  from  this  device are logged to the console but never
252              displayed in the web GUI.
253

FOLDER ELEMENT

255          <folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
256              <filesystemType>basic</filesystemType>
257              <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
258                  <encryptionPassword></encryptionPassword>
259              </device>
260              <minDiskFree unit="%">1</minDiskFree>
261              <versioning>
262                  <cleanupIntervalS>3600</cleanupIntervalS>
263                  <fsPath></fsPath>
264                  <fsType>basic</fsType>
265              </versioning>
266              <copiers>0</copiers>
267              <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
268              <hashers>0</hashers>
269              <order>random</order>
270              <ignoreDelete>false</ignoreDelete>
271              <scanProgressIntervalS>0</scanProgressIntervalS>
272              <pullerPauseS>0</pullerPauseS>
273              <maxConflicts>-1</maxConflicts>
274              <disableSparseFiles>false</disableSparseFiles>
275              <disableTempIndexes>false</disableTempIndexes>
276              <paused>false</paused>
277              <weakHashThresholdPct>25</weakHashThresholdPct>
278              <markerName>.stfolder</markerName>
279              <copyOwnershipFromParent>false</copyOwnershipFromParent>
280              <modTimeWindowS>0</modTimeWindowS>
281              <maxConcurrentWrites>2</maxConcurrentWrites>
282              <disableFsync>false</disableFsync>
283              <blockPullOrder>standard</blockPullOrder>
284              <copyRangeMethod>standard</copyRangeMethod>
285              <caseSensitiveFS>false</caseSensitiveFS>
286              <junctionsAsDirs>false</junctionsAsDirs>
287              <syncOwnership>false</syncOwnership>
288              <sendOwnership>false</sendOwnership>
289              <syncXattrs>false</syncXattrs>
290              <sendXattrs>false</sendXattrs>
291          </folder>
292
293       One or more folder elements must be present in the file.  Each  element
294       describes one folder. The following attributes may be set on the folder
295       element:
296
297       id (mandatory)
298              The folder ID, which must be unique.
299
300       label  The label of a folder is a human readable and descriptive  local
301              name.  May  be different on each device, empty, and/or identical
302              to other folder labels. (optional)
303
304       filesystemType
305              The internal file system  implementation  used  to  access  this
306              folder, detailed in a separate chapter.
307
308       path (mandatory)
309              The path to the directory where the folder is stored on this de‐
310              vice; not sent to other devices.
311
312       type   Controls how the folder is handled by Syncthing. Possible values
313              are:
314
315              sendreceive
316                     The  folder is in default mode. Sending local and accept‐
317                     ing remote changes.  Note that this type  was  previously
318                     called “readwrite” which is deprecated but still accepted
319                     in incoming configs.
320
321              sendonly
322                     The folder is in “send only” mode – it will not be  modi‐
323                     fied  by  Syncthing  on this device.  Note that this type
324                     was previously called “readonly” which is deprecated  but
325                     still accepted in incoming configs.
326
327              receiveonly
328                     The folder is in “receive only” mode – it will not propa‐
329                     gate changes to other devices.
330
331              receiveencrypted
332                     Must be used on untrusted devices, where the data  cannot
333                     be decrypted because no folder password was entered.  See
334                     untrusted.
335
336       rescanIntervalS
337              The rescan interval, in seconds. Can be set to 0 to disable when
338              external plugins are used to trigger rescans.
339
340       fsWatcherEnabled
341              If  set to true, this detects changes to files in the folder and
342              scans them.
343
344       fsWatcherDelayS
345              The duration during which changes detected are accumulated,  be‐
346              fore  a scan is scheduled (only takes effect if fsWatcherEnabled
347              is set to true).
348
349       ignorePerms
350              If true, files originating from this folder will be announced to
351              remote  devices  with the “no permission bits” flag.  The remote
352              devices will use whatever their default  permission  setting  is
353              when  creating the files.  The primary use case is for file sys‐
354              tems that do not support permissions, such as FAT,  or  environ‐
355              ments where changing permissions is impossible.
356
357       autoNormalize
358              Automatically  correct  UTF-8 normalization errors found in file
359              names.  The mechanism and how to set it up  is  described  in  a
360              separate chapter.
361
362       The following child elements may exist:
363
364       device These  must  have  the id attribute and can have an introducedBy
365              attribute, identifying the device that introduced  us  to  share
366              this  folder  with the given device.  If the original introducer
367              unshares this folder with this device, our  device  will  follow
368              and  unshare the folder (subject to skipIntroductionRemovals be‐
369              ing false on the introducer device).
370
371              All mentioned devices are those that will be sharing the  folder
372              in  question.  Each mentioned device must have a separate device
373              element later in the file.  It is customary that the  local  de‐
374              vice  ID  is  included in all folders.  Syncthing will currently
375              add this automatically if it is not present in the configuration
376              file.
377
378              The encryptionPassword sub-element contains the secret needed to
379              decrypt this folder’s data on the remote device.  If left empty,
380              the  data  is  plainly  accessible  (but  still protected by the
381              transport encryption).  The mechanism and how to set  it  up  is
382              described in a separate chapter.
383
384       minDiskFree
385              The  minimum required free space that should be available on the
386              disk this folder resides.  The folder will be stopped  when  the
387              value  drops below the threshold.  The element content is inter‐
388              preted according to the given  unit  attribute.   Accepted  unit
389              values are % (percent of the disk / volume size), kB, MB, GB and
390              TB.  Set to zero to disable.
391
392       versioning
393              Specifies a versioning configuration.
394
395              SEE ALSO:
396                 versioning
397
398       copiers
399
400       hashers
401              The number of copier and hasher routines to use, or  0  for  the
402              system  determined optimums. These are low-level performance op‐
403              tions for advanced users only; do not change unless requested to
404              or you’ve actually read and understood the code yourself. :)
405
406       pullerMaxPendingKiB
407              Controls  when  we  stop  sending requests to other devices once
408              we’ve got this much unserved requests.  The number of pullers is
409              automatically adjusted based on this desired amount of outstand‐
410              ing request data.
411
412       order  The order in which needed files should be pulled from the  clus‐
413              ter.  It has no effect when the folder type is “send only”.  The
414              possibles values are:
415
416              random (default)
417                     Pull files in random order. This optimizes for  balancing
418                     resources among the devices in a cluster.
419
420              alphabetic
421                     Pull files ordered by file name alphabetically.
422
423              smallestFirst, largestFirst
424                     Pull  files  ordered  by  file size; smallest and largest
425                     first respectively.
426
427              oldestFirst, newestFirst
428                     Pull files ordered by modification time; oldest and  new‐
429                     est first respectively.
430
431              Note  that the scanned files are sent in batches and the sorting
432              is applied only to the already discovered files. This means  the
433              sync  might  start  with  a 1 GB file even if there is 1 KB file
434              available on the source device until the 1 KB becomes  known  to
435              the pulling device.
436
437       ignoreDelete
438              WARNING:
439                 Enabling  this  is highly discouraged - use at your own risk.
440                 You have been warned.
441
442              When set to true, this device will pretend not to  see  instruc‐
443              tions  to delete files from other devices.  The mechanism is de‐
444              scribed in a separate chapter.
445
446       scanProgressIntervalS
447              The interval in seconds with which scan progress information  is
448              sent  to  the  GUI. Setting to 0 will cause Syncthing to use the
449              default value of two.
450
451       pullerPauseS
452              Tweak for rate limiting  the  puller  when  it  retries  pulling
453              files. Don’t change this unless you know what you’re doing.
454
455       maxConflicts
456              The  maximum  number  of  conflict copies to keep around for any
457              given file.  The default, -1, means an unlimited number. Setting
458              this to 0 disables conflict copies altogether.
459
460       disableSparseFiles
461              By default, blocks containing all zeros are not written, causing
462              files to be sparse on filesystems  that  support  this  feature.
463              When set to true, sparse files will not be created.
464
465       disableTempIndexes
466              By  default, devices exchange information about blocks available
467              in transfers that are still in progress, which allows other  de‐
468              vices  to  download  parts of files that are not yet fully down‐
469              loaded on your own device,  essentially  making  transfers  more
470              torrent  like.  When  set  to  true, such information is not ex‐
471              changed for this folder.
472
473       paused True if this folder is (temporarily) suspended.
474
475       weakHashThresholdPct
476              Use weak hash if more than the given percentage of the file  has
477              changed. Set to -1 to always use weak hash. Default is 25.
478
479       markerName
480              Name  of  a  directory  or file in the folder root to be used as
481              marker-faq. Default is .stfolder.
482
483       copyOwnershipFromParent
484              On Unix systems, tries to copy file/folder  ownership  from  the
485              parent directory (the directory it’s located in).  Requires run‐
486              ning Syncthing as a privileged user, or granting  it  additional
487              capabilities (e.g. CAP_CHOWN on Linux).
488
489       modTimeWindowS
490              Allowed  modification  timestamp difference when comparing files
491              for equivalence. To be used on file systems which have  unstable
492              modification  timestamps  that might change after being recorded
493              during the last write operation. Default is 2  on  Android  when
494              the folder is located on a FAT partition, and 0 otherwise.
495
496       maxConcurrentWrites
497              Maximum number of concurrent write operations while syncing. In‐
498              creasing this might increase or decrease disk  performance,  de‐
499              pending on the underlying storage. Default is 2.
500
501       disableFsync
502              WARNING:
503                 This is a known insecure option - use at your own risk.
504
505              Disables  committing  file  operations  to disk before recording
506              them in the database.  Disabling fsync can lead to data  corrup‐
507              tion.  The mechanism is described in a separate chapter.
508
509       blockPullOrder
510              Order  in which the blocks of a file are downloaded. This option
511              controls how quickly different parts of the file spread  between
512              the  connected  devices,  at  the  cost of causing strain on the
513              storage.
514
515              Available options:
516
517              standard (default)
518                     The blocks of a file are split into  N  equal  continuous
519                     sequences,  where  N  is the number of connected devices.
520                     Each device starts downloading its  own  sequence,  after
521                     which  it  picks  other devices sequences at random. Pro‐
522                     vides acceptable data distribution and  minimal  spinning
523                     disk strain.
524
525              random The  blocks  of  a file are downloaded in a random order.
526                     Provides great data  distribution,  but  very  taxing  on
527                     spinning disk drives.
528
529              inOrder
530                     The  blocks  of  a file are downloaded sequentially, from
531                     start to finish. Spinning disk drive friendly,  but  pro‐
532                     vides no improvements to data distribution.
533
534       copyRangeMethod
535              Provides  a  choice  of  method  for copying data between files.
536              This can be used to optimise copies on network filesystems,  im‐
537              prove   speed   of   large   copies  or  clone  the  data  using
538              copy-on-write functionality if the  underlying  filesystem  sup‐
539              ports it.  The mechanism is described in a separate chapter.
540
541       caseSensitiveFS
542              Affects  performance  by  disabling  the extra safety checks for
543              case insensitive filesystems.  The mechanism and how to  set  it
544              up is described in a separate chapter.
545
546       junctionsAsDirs
547              NTFS directory junctions are treated as ordinary directories, if
548              this is set to true.
549
550       syncOwnership
551              File and directory ownership is synced when this is set to true.
552              See /advanced/folder-sync-ownership for more information.
553
554       sendOwnership
555              File and directory ownership information is scanned when this is
556              set to true. See /advanced/folder-send-ownership for more infor‐
557              mation.
558
559       syncXattrs
560              File  and  directory extended attributes are synced when this is
561              set to true. See /advanced/folder-sync-xattrs for more  informa‐
562              tion.
563
564       sendXattrs
565              File  and  directory extended attributes are scanned and sent to
566              other  devices  when   this   is   set   to   true.   See   /ad‐
567              vanced/folder-send-xattrs for more information.
568

DEVICE ELEMENT

570          <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="2CYF2WQ-AKZO2QZ-JAKWLYD-AGHMQUM-BGXUOIS-GYILW34-HJG3DUK-LRRYQAR">
571              <address>dynamic</address>
572              <paused>false</paused>
573              <autoAcceptFolders>false</autoAcceptFolders>
574              <maxSendKbps>0</maxSendKbps>
575              <maxRecvKbps>0</maxRecvKbps>
576              <ignoredFolder time="2022-01-09T19:09:52Z" id="br63e-wyhb7" label="Foo"></ignoredFolder>
577              <maxRequestKiB>0</maxRequestKiB>
578              <untrusted>false</untrusted>
579              <remoteGUIPort>0</remoteGUIPort>
580          </device>
581          <device id="2CYF2WQ-AKZO2QZ-JAKWLYD-AGHMQUM-BGXUOIS-GYILW34-HJG3DUK-LRRYQAR" name="syno local" compression="metadata" introducer="true" skipIntroductionRemovals="false" introducedBy="">
582              <address>tcp://192.0.2.1:22001</address>
583              <paused>true</paused>
584              <allowedNetwork>192.168.0.0/16</allowedNetwork>
585              <autoAcceptFolders>false</autoAcceptFolders>
586              <maxSendKbps>100</maxSendKbps>
587              <maxRecvKbps>100</maxRecvKbps>
588              <maxRequestKiB>65536</maxRequestKiB>
589              <untrusted>false</untrusted>
590              <remoteGUIPort>8384</remoteGUIPort>
591          </device>
592
593       One  or  more device elements must be present in the file. Each element
594       describes a device participating in the cluster. It is customary to in‐
595       clude  a  device element for the local device; Syncthing will currently
596       add one if it is not present. The following attributes may  be  set  on
597       the device element:
598
599       id (mandatory)
600              The device ID.
601
602       name   A friendly name for the device. (optional)
603
604       compression
605              Whether  to  use  protocol  compression when sending messages to
606              this device.  The possible values are:
607
608              metadata
609                     Compress metadata packets,  such  as  index  information.
610                     Metadata  is usually very compression friendly so this is
611                     a good default.
612
613              always Compress all packets, including file data. This is recom‐
614                     mended  if  the  folders contents are mainly compressible
615                     data such as documents or text files.
616
617              never  Disable all compression.
618
619       introducer
620              Set to true if this device should be trusted as  an  introducer,
621              i.e.  we  should copy their list of devices per folder when con‐
622              necting.
623
624              SEE ALSO:
625                 introducer
626
627       skipIntroductionRemovals
628              Set to true if you wish to follow  only  introductions  and  not
629              de-introductions.  For example, if this is set, we would not re‐
630              move a device that we were introduced to even  if  the  original
631              introducer is no longer listing the remote device as known.
632
633       introducedBy
634              Defines which device has introduced us to this device. Used only
635              for following de-introductions.
636
637       certName
638              The device certificate’s common name, if it is not  the  default
639              “syncthing”.
640
641       From  the  following child elements at least one address child must ex‐
642       ist.
643
644       address (mandatory: At least one must be present.)
645              Contains an address or host name to use when attempting to  con‐
646              nect to this device.  Entries other than dynamic need a protocol
647              specific prefix.  For  the  TCP  protocol  the  prefixes  tcp://
648              (dual-stack),  tcp4:// (IPv4 only) or tcp6:// (IPv6 only) can be
649              used.   The  prefixes  for  the  QUIC  protocol  are  analogous:
650              quic://,  quic4://  and quic6:// Note that IP addresses need not
651              use IPv4 or IPv6 prefixes; these are optional. Accepted  formats
652              are:
653
654              IPv4 address (tcp://192.0.2.42)
655                     The default port (22000) is used.
656
657              IPv4 address and port (tcp://192.0.2.42:12345)
658                     The address and port is used as given.
659
660              IPv6 address (tcp://[2001:db8::23:42])
661                     The default port (22000) is used. The address must be en‐
662                     closed in square brackets.
663
664              IPv6 address and port (tcp://[2001:db8::23:42]:12345)
665                     The address and port is used as given. The  address  must
666                     be enclosed in square brackets.
667
668              Host name (tcp6://fileserver)
669                     The  host  name  will be used on the default port (22000)
670                     and connections will be attempted only via IPv6.
671
672              Host name and port (tcp://fileserver:12345)
673                     The host name will be used on the given port and  connec‐
674                     tions will be attempted via both IPv4 and IPv6, depending
675                     on name resolution.
676
677              dynamic
678                     The word dynamic (without any prefix) means to use  local
679                     and global discovery to find the device.
680
681              You  can  set multiple addresses and combine it with the dynamic
682              keyword for example:
683
684                 <device id="...">
685                     <address>tcp://192.0.2.1:22001</address>
686                     <address>quic://192.0.1.254:22000</address>
687                     <address>dynamic</address>
688                 </device>
689
690       paused True if synchronization with this devices is (temporarily)  sus‐
691              pended.
692
693       allowedNetwork
694              If given, this restricts connections to this device to only this
695              network.  The mechanism is described in  detail  in  a  separate
696              chapter).
697
698       autoAcceptFolders
699              If  true,  folders  shared from this remote device are automati‐
700              cally added and synced locally under the default path.  For  the
701              folder  name,  Syncthing  tries to use the label from the remote
702              device, and if the same label already exists, it then  tries  to
703              use the folder’s ID.  If that exists as well, the folder is just
704              offered to accept manually.  A local folder already  added  with
705              the same ID will just be shared rather than created separately.
706
707       maxSendKbps
708              Maximum send rate to use for this device. Unit is kibibytes/sec‐
709              ond, despite the config name looking like kilobits/second.
710
711       maxRecvKbps
712              Maximum  receive  rate  to  use  for  this   device.   Unit   is
713              kibibytes/second,  despite  the  config  name looking like kilo‐
714              bits/second.
715
716       ignoredFolder
717              Contains the ID of the  folder  that  should  be  ignored.  This
718              folder  will always be skipped when advertised from the contain‐
719              ing remote device, i.e. this will be logged, but there  will  be
720              no dialog shown in the web GUI.
721
722       maxRequestKiB
723              Maximum  amount  of data to have outstanding in requests towards
724              this device.  Unit is kibibytes.
725
726       remoteGUIPort
727              If set to a positive integer, the GUI will display an HTTP  link
728              to  the  IP address which is currently used for synchronization.
729              Only the TCP port is exchanged for  the  value  specified  here.
730              Note  that  any  port forwarding or firewall settings need to be
731              done manually and the link will probably not work for link-local
732              IPv6 addresses because of modern browser limitations.
733
734       untrusted
735              This boolean value marks a particular device as untrusted, which
736              disallows ever sharing any  unencrypted  data  with  it.   Every
737              folder shared with that device then needs an encryption password
738              set, or must already be of the “receive encrypted” type locally.
739              Refer to the detailed explanation under untrusted.
740

GUI ELEMENT

742          <gui enabled="true" tls="false" debugging="false">
743              <address>127.0.0.1:8384</address>
744              <apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
745              <theme>default</theme>
746          </gui>
747
748       There  must  be  exactly one gui element. The GUI configuration is also
749       used by the /dev/rest and the /dev/events. The following attributes may
750       be set on the gui element:
751
752       enabled
753              If not true, the GUI and API will not be started.
754
755       tls    If set to true, TLS (HTTPS) will be enforced. Non-HTTPS requests
756              will be redirected to HTTPS. When set to false, TLS  connections
757              are still possible but not required.
758
759       debugging
760              This  enables  /users/profiling  and additional endpoints in the
761              REST API, see /rest/debug.
762
763       The following child elements may be present:
764
765       address (mandatory: Exactly one element must be present.)
766              Set the listen address.  Allowed address formats are:
767
768              IPv4 address and port (127.0.0.1:8384)
769                     The address and port are used as given.
770
771              IPv6 address and port ([::1]:8384)
772                     The address and port are used as given. The address  must
773                     be enclosed in square brackets.
774
775              Wildcard and port (0.0.0.0:12345, [::]:12345, :12345)
776                     These are equivalent and will result in Syncthing listen‐
777                     ing on all interfaces via both IPv4 and IPv6.
778
779              UNIX socket location (/var/run/st.sock)
780                     If the address is an absolute path it is  interpreted  as
781                     the path to a UNIX socket.
782
783       unixSocketPermissions
784              When  address  is  set to a UNIX socket location, set this to an
785              octal value to override the default permissions of the socket.
786
787       user   Set to require authentication.
788
789       password
790              Contains the bcrypt hash of the real password.
791
792       apikey If set, this is the API key that enables usage of the  REST  in‐
793              terface.
794
795       insecureAdminAccess
796              If  true,  this  allows access to the web GUI from outside (i.e.
797              not localhost) without authorization. A warning  will  displayed
798              about this setting on startup.
799
800       insecureSkipHostcheck
801              When  the  GUI  / API is bound to localhost, we enforce that the
802              Host header looks like localhost.   This  option  bypasses  that
803              check.
804
805       insecureAllowFrameLoading
806              Allow  rendering the GUI within an <iframe>, <frame> or <object>
807              by not setting  the  X-Frame-Options:  SAMEORIGIN  HTTP  header.
808              This  may  be  needed for serving the Syncthing GUI as part of a
809              website through a proxy.
810
811       theme  The name of the theme to use.
812
813       authMode
814              Authentication mode to use. If not present,  the  authentication
815              mode  (static)  is  controlled  by the presence of user/password
816              fields for backward compatibility.
817
818              static Authentication using user and password.
819
820              ldap   LDAP authentication. Requires ldap top level config  sec‐
821                     tion to be present.
822

LDAP ELEMENT

824          <ldap>
825              <address>localhost:389</address>
826              <bindDN>cn=%s,ou=users,dc=syncthing,dc=net</bindDN>
827              <transport>nontls</transport>
828              <insecureSkipVerify>false</insecureSkipVerify>
829          </ldap>
830
831       The ldap element contains LDAP configuration options.  The mechanism is
832       described in detail under ldap.
833
834       address (mandatory)
835                 LDAP server address (server:port).
836
837       bindDN (mandatory)
838                 BindDN for user authentication.  Special %s  variable  should
839                 be used to pass username to LDAP.
840
841       transport
842
843              nontls Non secure connection.
844
845              tls    TLS secured connection.
846
847              starttls
848                     StartTLS connection mode.
849
850       insecureSkipVerify
851              Skip verification (true or false).
852
853       searchBaseDN
854              Base DN for user searches.
855
856       searchFilter
857              Search filter for user searches.
858

OPTIONS ELEMENT

860          <options>
861              <listenAddress>default</listenAddress>
862              <globalAnnounceServer>default</globalAnnounceServer>
863              <globalAnnounceEnabled>true</globalAnnounceEnabled>
864              <localAnnounceEnabled>true</localAnnounceEnabled>
865              <localAnnouncePort>21027</localAnnouncePort>
866              <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr>
867              <maxSendKbps>0</maxSendKbps>
868              <maxRecvKbps>0</maxRecvKbps>
869              <reconnectionIntervalS>60</reconnectionIntervalS>
870              <relaysEnabled>true</relaysEnabled>
871              <relayReconnectIntervalM>10</relayReconnectIntervalM>
872              <startBrowser>true</startBrowser>
873              <natEnabled>true</natEnabled>
874              <natLeaseMinutes>60</natLeaseMinutes>
875              <natRenewalMinutes>30</natRenewalMinutes>
876              <natTimeoutSeconds>10</natTimeoutSeconds>
877              <urAccepted>0</urAccepted>
878              <urSeen>0</urSeen>
879              <urUniqueID></urUniqueID>
880              <urURL>https://data.syncthing.net/newdata</urURL>
881              <urPostInsecurely>false</urPostInsecurely>
882              <urInitialDelayS>1800</urInitialDelayS>
883              <restartOnWakeup>true</restartOnWakeup>
884              <autoUpgradeIntervalH>12</autoUpgradeIntervalH>
885              <upgradeToPreReleases>false</upgradeToPreReleases>
886              <keepTemporariesH>24</keepTemporariesH>
887              <cacheIgnoredFiles>false</cacheIgnoredFiles>
888              <progressUpdateIntervalS>5</progressUpdateIntervalS>
889              <limitBandwidthInLan>false</limitBandwidthInLan>
890              <minHomeDiskFree unit="%">1</minHomeDiskFree>
891              <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
892              <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
893              <tempIndexMinBlocks>10</tempIndexMinBlocks>
894              <unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
895              <trafficClass>0</trafficClass>
896              <setLowPriority>true</setLowPriority>
897              <maxFolderConcurrency>0</maxFolderConcurrency>
898              <crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
899              <crashReportingEnabled>true</crashReportingEnabled>
900              <stunKeepaliveStartS>180</stunKeepaliveStartS>
901              <stunKeepaliveMinS>20</stunKeepaliveMinS>
902              <stunServer>default</stunServer>
903              <databaseTuning>auto</databaseTuning>
904              <maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
905              <announceLANAddresses>true</announceLANAddresses>
906              <sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
907              <connectionLimitEnough>0</connectionLimitEnough>
908              <connectionLimitMax>0</connectionLimitMax>
909              <insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
910          </options>
911
912       The options element contains all other global configuration options.
913
914       listenAddress
915              The listen address for incoming sync connections. See Listen Ad‐
916              dresses for the allowed syntax.
917
918       globalAnnounceServer
919              A URI to a global announce (discovery) server, or the  word  de‐
920              fault  to  include  the default servers. Any number of globalAn‐
921              nounceServer elements may be present. The syntax for non-default
922              entries is that of an HTTP or HTTPS URL. A number of options may
923              be added as query options to the URL: insecure to  prevent  cer‐
924              tificate  validation (required for HTTP URLs) and id=<device ID>
925              to perform certificate pinning. The device ID to use is  printed
926              by the discovery server on startup.
927
928       globalAnnounceEnabled
929              Whether  to announce this device to the global announce (discov‐
930              ery) server, and also use it to look up other devices.
931
932       localAnnounceEnabled
933              Whether to send announcements to the local LAN,  also  use  such
934              announcements to find other devices.
935
936       localAnnouncePort
937              The  port  on  which to listen and send IPv4 broadcast announce‐
938              ments to.
939
940       localAnnounceMCAddr
941              The group address and port to join and send IPv6  multicast  an‐
942              nouncements on.
943
944       maxSendKbps
945              Outgoing data rate limit, in kibibytes per second.
946
947       maxRecvKbps
948              Incoming data rate limits, in kibibytes per second.
949
950       reconnectionIntervalS
951              The number of seconds to wait between each attempt to connect to
952              currently unconnected devices.
953
954       relaysEnabled
955              When true, relays will be connected to and potentially used  for
956              device to device connections.
957
958       relayReconnectIntervalM
959              Sets the interval, in minutes, between relay reconnect attempts.
960
961       startBrowser
962              Whether to attempt to start a browser to show the GUI when Sync‐
963              thing starts.
964
965       natEnabled
966              Whether to attempt to perform a UPnP and  NAT-PMP  port  mapping
967              for incoming sync connections.
968
969       natLeaseMinutes
970              Request  a lease for this many minutes; zero to request a perma‐
971              nent lease.
972
973       natRenewalMinutes
974              Attempt to renew the lease after this many minutes.
975
976       natTimeoutSeconds
977              When scanning for UPnP devices, wait this long for responses.
978
979       urAccepted
980              Whether the user has accepted to submit  anonymous  usage  data.
981              The  default,  0, mean the user has not made a choice, and Sync‐
982              thing will ask at some point in the future. -1 means no, a  num‐
983              ber  above  zero  means that that version of usage reporting has
984              been accepted.
985
986       urSeen The highest usage reporting version that has already been  shown
987              in the web GUI.
988
989       urUniqueID
990              The  unique  ID  sent  together with the usage report. Generated
991              when usage reporting is enabled.
992
993       urURL  The URL to post usage report data to, when enabled.
994
995       urPostInsecurely
996              When true, the UR URL can be http instead of https,  or  have  a
997              self-signed certificate. The default is false.
998
999       urInitialDelayS
1000              The  time  to wait from startup for the first usage report to be
1001              sent. Allows the system to stabilize  before  reporting  statis‐
1002              tics.
1003
1004       restartOnWakeup
1005              Whether  to  perform  a restart of Syncthing when it is detected
1006              that we are waking from sleep mode (i.e. an unfolding laptop).
1007
1008       autoUpgradeIntervalH
1009              Check for a newer version after this many hours.  Set  to  0  to
1010              disable automatic upgrades.
1011
1012       upgradeToPreReleases
1013              If  true, automatic upgrades include release candidates (see re‐
1014              leases).
1015
1016       keepTemporariesH
1017              Keep temporary failed transfers for this many hours.  While  the
1018              temporaries  are  kept, the data they contain need not be trans‐
1019              ferred again.
1020
1021       cacheIgnoredFiles
1022              Whether to cache the results of ignore pattern evaluation.  Per‐
1023              formance  at  the price of memory. Defaults to false as the cost
1024              for evaluating ignores is usually not significant.
1025
1026       progressUpdateIntervalS
1027              How often in seconds the progress of ongoing downloads  is  made
1028              available to the GUI.
1029
1030       limitBandwidthInLan
1031              Whether  to apply bandwidth limits to devices in the same broad‐
1032              cast domain as the local device.
1033
1034       minHomeDiskFree
1035              The minimum required free space that should be available on  the
1036              partition holding the configuration and index.  The element con‐
1037              tent is interpreted according to the given unit attribute.   Ac‐
1038              cepted  unit  values  are % (percent of the disk / volume size),
1039              kB, MB, GB and TB.  Set to zero to disable.
1040
1041       releasesURL
1042              The URL from which release information is loaded, for  automatic
1043              upgrades.
1044
1045       alwaysLocalNet
1046              Network  that  should be considered as local given in CIDR nota‐
1047              tion.
1048
1049       overwriteRemoteDeviceNamesOnConnect
1050              If set, device names will always be overwritten  with  the  name
1051              given  by  remote  on each connection. By default, the name that
1052              the remote device announces will only be adopted when a name has
1053              not already been set.
1054
1055       tempIndexMinBlocks
1056              When exchanging index information for incomplete transfers, only
1057              take into account files that have at least this many blocks.
1058
1059       unackedNotificationID
1060              ID of a notification to be displayed in the web GUI. Will be re‐
1061              moved  once  the user acknowledged it (e.g. an transition notice
1062              on an upgrade).
1063
1064       trafficClass
1065              Specify a type of service (TOS)/traffic class of outgoing  pack‐
1066              ets.
1067
1068       stunServer
1069              Server  to  be  used for STUN, given as ip:port. The keyword de‐
1070              fault gets expanded to  stun.callwithus.com:3478,  stun.counter‐
1071              path.com:3478,  stun.counterpath.net:3478,  stun.ekiga.net:3478,
1072              stun.ideasip.com:3478,              stun.internetcalls.com:3478,
1073              stun.schlund.de:3478,      stun.sipgate.net:10000,     stun.sip‐
1074              gate.net:3478,                          stun.voip.aebc.com:3478,
1075              stun.voiparound.com:3478,  stun.voipbuster.com:3478,  stun.voip‐
1076              stunt.com:3478 and stun.xten.com:3478 (this is the default).
1077
1078       stunKeepaliveStartS
1079              Interval in seconds between contacting a STUN server to maintain
1080              NAT  mapping.  Default  is 24 and you can set it to 0 to disable
1081              contacting STUN servers.  The interval is automatically  reduced
1082              if needed, down to a minimum of stunKeepaliveMinS.
1083
1084       stunKeepaliveMinS
1085              Minimum for the stunKeepaliveStartS interval, in seconds.
1086
1087       setLowPriority
1088              Syncthing will attempt to lower its process priority at startup.
1089              Specifically: on Linux, set itself to a separate process  group,
1090              set the niceness level of that process group to nine and the I/O
1091              priority to best effort level five; on  other  Unixes,  set  the
1092              process niceness level to nine; on Windows, set the process pri‐
1093              ority class to below normal. To disable this behavior, for exam‐
1094              ple  to  control  process priority yourself as part of launching
1095              Syncthing, set this option to false.
1096
1097       maxFolderConcurrency
1098              This option controls how many folders  may  concurrently  be  in
1099              I/O-intensive operations such as syncing or scanning.  The mech‐
1100              anism is described in detail in a separate chapter.
1101
1102       crashReportingURL
1103              Server URL where automatic crash reports will  be  sent  if  en‐
1104              abled.
1105
1106       crashReportingEnabled
1107              Switch  to  opt  out from the automatic crash reporting feature.
1108              Set false to keep Syncthing from sending panic logs  on  serious
1109              troubles.   Defaults  to  true,  to  help  the  developers trou‐
1110              bleshoot.
1111
1112       databaseTuning
1113              Controls how Syncthing uses the backend key-value database  that
1114              stores  the  index data and other persistent data it needs.  The
1115              available options and implications are explained in  a  separate
1116              chapter.
1117
1118       maxConcurrentIncomingRequestKiB
1119              This  limits  how many bytes we have “in the air” in the form of
1120              response data being read and processed.
1121
1122       announceLANAddresses
1123              Enable (the default) or disable announcing private (RFC1918) LAN
1124              IP addresses to global discovery.
1125
1126       sendFullIndexOnUpgrade
1127              Controls  whether  all  index data is resent when an upgrade has
1128              happened, equivalent to starting Syncthing with  --reset-deltas.
1129              This  used  to be the default behavior in older versions, but is
1130              mainly useful as a troubleshooting step and causes high database
1131              churn. The default is now false.
1132
1133       featureFlag
1134              Feature flags are simple strings that, when added to the config‐
1135              uration, may unleash unfinished or still-in-development features
1136              to  allow early user testing.  Any supported value will be sepa‐
1137              rately announced with the feature, so that regular users do  not
1138              enable it by accident.
1139
1140       connectionLimitEnough
1141              The  number of connections at which we stop trying to connect to
1142              more devices, zero meaning no limit.  Does not  affect  incoming
1143              connections.  The mechanism is described in detail in a separate
1144              chapter.
1145
1146       connectionLimitMax
1147              The maximum number of connections which we will allow in  total,
1148              zero  meaning  no  limit.  Affects incoming connections and pre‐
1149              vents attempting outgoing connections.   The  mechanism  is  de‐
1150              scribed in detail in a separate chapter.
1151
1152       insecureAllowOldTLSVersions
1153              Only  for compatibility with old versions of Syncthing on remote
1154              devices,   as    detailed    in    /advanced/option-insecure-al‐
1155              low-old-tls-versions.
1156

DEFAULTS ELEMENT

1158          <defaults>
1159              <folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
1160                  <filesystemType>basic</filesystemType>
1161                  <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
1162                      <encryptionPassword></encryptionPassword>
1163                  </device>
1164                  <minDiskFree unit="%">1</minDiskFree>
1165                  <versioning>
1166                      <cleanupIntervalS>3600</cleanupIntervalS>
1167                      <fsPath></fsPath>
1168                      <fsType>basic</fsType>
1169                  </versioning>
1170                  <copiers>0</copiers>
1171                  <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
1172                  <hashers>0</hashers>
1173                  <order>random</order>
1174                  <ignoreDelete>false</ignoreDelete>
1175                  <scanProgressIntervalS>0</scanProgressIntervalS>
1176                  <pullerPauseS>0</pullerPauseS>
1177                  <maxConflicts>10</maxConflicts>
1178                  <disableSparseFiles>false</disableSparseFiles>
1179                  <disableTempIndexes>false</disableTempIndexes>
1180                  <paused>false</paused>
1181                  <weakHashThresholdPct>25</weakHashThresholdPct>
1182                  <markerName>.stfolder</markerName>
1183                  <copyOwnershipFromParent>false</copyOwnershipFromParent>
1184                  <modTimeWindowS>0</modTimeWindowS>
1185                  <maxConcurrentWrites>2</maxConcurrentWrites>
1186                  <disableFsync>false</disableFsync>
1187                  <blockPullOrder>standard</blockPullOrder>
1188                  <copyRangeMethod>standard</copyRangeMethod>
1189                  <caseSensitiveFS>false</caseSensitiveFS>
1190                  <junctionsAsDirs>false</junctionsAsDirs>
1191              </folder>
1192              <device id="" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
1193                  <address>dynamic</address>
1194                  <paused>false</paused>
1195                  <autoAcceptFolders>false</autoAcceptFolders>
1196                  <maxSendKbps>0</maxSendKbps>
1197                  <maxRecvKbps>0</maxRecvKbps>
1198                  <maxRequestKiB>0</maxRequestKiB>
1199                  <untrusted>false</untrusted>
1200                  <remoteGUIPort>0</remoteGUIPort>
1201              </device>
1202              <ignores>
1203                  <line>!foo2</line>
1204                  <line>// comment</line>
1205                  <line>(?d).DS_Store</line>
1206                  <line>*2</line>
1207                  <line>qu*</line>
1208              </ignores>
1209          </defaults>
1210
1211       The  defaults  element  describes a template for newly added device and
1212       folder options.  These will be used when adding a new remote device  or
1213       folder, either through the GUI or the command line interface.  The fol‐
1214       lowing child elements can be present in the defaults element:
1215
1216       device Template for a device element, with the same internal structure.
1217              Any  fields  here  will be used for a newly added remote device.
1218              The id attribute is meaningless in this context.
1219
1220       folder Template for a folder element, with the same internal structure.
1221              Any  fields  here  will be used for a newly added shared folder.
1222              The id attribute is meaningless in this context.
1223
1224              The UI will propose to create new folders at the path  given  in
1225              the path attribute (used to be defaultFolderPath under options).
1226              It also applies to folders automatically accepted from a  remote
1227              device.
1228
1229              Even  sharing  with other remote devices can be done in the tem‐
1230              plate by including the appropriate folder.device element  under‐
1231              neath.
1232
1233       ignores
1234              New in version 1.19.0.
1235
1236
1237              Template  for the ignore patterns applied to new folders.  These
1238              are copied to the .stignore file when a folder is  automatically
1239              accepted  from  a  remote device.  The GUI uses them to pre-fill
1240              the respective field when adding a new folder as well.  In  XML,
1241              each pattern line is represented as by a <line> element.
1242
1243   Listen Addresses
1244       The  following  address  types are accepted in sync protocol listen ad‐
1245       dresses.  If you want Syncthing to listen on  multiple  addresses,  you
1246       can either: add multiple <listenAddress> tags in the configuration file
1247       or enter several addresses separated by commas in the GUI.
1248
1249       Default listen addresses (default)
1250              This is equivalent to tcp://0.0.0.0:22000,  quic://0.0.0.0:22000
1251              and dynamic+https://relays.syncthing.net/endpoint.
1252
1253       TCP wildcard and port (tcp://0.0.0.0:22000, tcp://:22000)
1254              These  are  equivalent and will result in Syncthing listening on
1255              all interfaces, IPv4 and IPv6, on the specified port.
1256
1257       TCP IPv4 wildcard and port (tcp4://0.0.0.0:22000, tcp4://:22000)
1258              These are equivalent and will result in Syncthing  listening  on
1259              all interfaces via IPv4 only.
1260
1261       TCP IPv4 address and port (tcp4://192.0.2.1:22000)
1262              This results in Syncthing listening on the specified address and
1263              port, IPv4 only.
1264
1265       TCP IPv6 wildcard and port (tcp6://[::]:22000, tcp6://:22000)
1266              These are equivalent and will result in Syncthing  listening  on
1267              all interfaces via IPv6 only.
1268
1269       TCP IPv6 address and port (tcp6://[2001:db8::42]:22000)
1270              This results in Syncthing listening on the specified address and
1271              port, IPv6 only.
1272
1273       QUIC address and port (e.g. quic://0.0.0.0:22000)
1274              Syntax is the same as for TCP, also quic4 and quic6 can be used.
1275
1276       Static relay address (relay://192.0.2.42:22067?id=abcd123...)
1277              Syncthing will connect to and listen  for  incoming  connections
1278              via the specified relay address.
1279
1280   Todo
1281       Document available URL parameters.
1282
1283       Dynamic relay pool (dynamic+https://192.0.2.42/relays)
1284              Syncthing  will  fetch  the  specified HTTPS URL, parse it for a
1285              JSON payload describing relays, select a relay from  the  avail‐
1286              able  ones and listen via that as if specified as a static relay
1287              above.
1288
1289   Todo
1290       Document available URL parameters.
1291

SYNCING CONFIGURATION FILES

1293       Syncing configuration files between devices (such that multiple devices
1294       are  using the same configuration files) can cause issues. This is easy
1295       to do accidentally if you sync your home folder between devices. A com‐
1296       mon  symptom  of  syncing  configuration files is two devices ending up
1297       with the same Device ID.
1298
1299       If you want to use Syncthing to backup your configuration files, it  is
1300       recommended  that the files you are backing up are in a folder-sendonly
1301       to prevent other devices from overwriting the per device configuration.
1302       The  folder on the remote device(s) should not be used as configuration
1303       for the remote devices.
1304
1305       If you’d like to sync your home folder in non-send only mode,  you  may
1306       add  the folder that stores the configuration files to the ignore list.
1307       If you’d also like to backup  your  configuration  files,  add  another
1308       folder in send only mode for just the configuration folder.
1309

AUTHOR

1311       The Syncthing Authors
1312
1314       2014-2019, The Syncthing Authors
1315
1316
1317
1318
1319v1.22.2                          Dec 29, 2022              SYNCTHING-CONFIG(5)
Impressum