12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685 |
- .\" Man page generated from reStructuredText.
- .
- .
- .nr rst2man-indent-level 0
- .
- .de1 rstReportMargin
- \\$1 \\n[an-margin]
- level \\n[rst2man-indent-level]
- level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
- -
- \\n[rst2man-indent0]
- \\n[rst2man-indent1]
- \\n[rst2man-indent2]
- ..
- .de1 INDENT
- .\" .rstReportMargin pre:
- . RS \\$1
- . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
- . nr rst2man-indent-level +1
- .\" .rstReportMargin post:
- ..
- .de UNINDENT
- . RE
- .\" indent \\n[an-margin]
- .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
- .nr rst2man-indent-level -1
- .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
- .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
- ..
- .TH "SYNCTHING-CONFIG" "5" "Jun 07, 2023" "v1.23.5" "Syncthing"
- .SH NAME
- syncthing-config \- Syncthing Configuration
- .SH SYNOPSIS
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- $HOME/.config/syncthing
- $HOME/Library/Application Support/Syncthing
- %LOCALAPPDATA%\eSyncthing
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .SH DESCRIPTION
- .sp
- New in version 1.5.0: Database and config can now be set separately. Previously the database was
- always located in the same directory as the config.
- .sp
- Syncthing uses a single directory to store configuration and crypto keys.
- Syncthing also has a database, which is often stored in this directory too.
- The config location defaults to \fB$HOME/.config/syncthing\fP
- (Unix\-like), \fB$HOME/Library/Application Support/Syncthing\fP (Mac),
- or \fB%LOCALAPPDATA%\eSyncthing\fP (Windows). It can be changed at runtime
- using the \fB\-\-config\fP flag. In this directory the following files are
- located:
- .INDENT 0.0
- .TP
- .B \fBconfig.xml\fP
- The configuration file, in XML format.
- .TP
- .B \fBcert.pem\fP, \fBkey.pem\fP
- The device’s ECDSA public and private key. These form the basis for the
- device ID. The key must be kept private.
- .TP
- .B \fBhttps\-cert.pem\fP, \fBhttps\-key.pem\fP
- The certificate and key for HTTPS GUI connections. These may be replaced
- with a custom certificate for HTTPS as desired.
- .TP
- .B \fBcsrftokens.txt\fP
- A list of recently issued CSRF tokens (for protection against browser cross
- site request forgery).
- .UNINDENT
- .sp
- The database is stored either in the same directory as the config (usually the
- default), but may also be located in one of the following directories (Unix\-like
- platforms only):
- .INDENT 0.0
- .IP \(bu 2
- If a database exists in the old default location, that location is
- still used.
- .IP \(bu 2
- If \fB$XDG_DATA_HOME\fP is set, use \fB$XDG_DATA_HOME/syncthing\fP\&.
- .IP \(bu 2
- If \fB~/.local/share/syncthing\fP exists, use that location.
- .IP \(bu 2
- Use the old default location (same as config).
- .UNINDENT
- .sp
- The location of the database can be changed using the \fB\-\-data\fP flag. The
- \fB\-\-home\fP flag sets both config and database locations at the same time.
- The database contains the following files:
- .INDENT 0.0
- .TP
- .B \fBindex\-\fP\fI*\fP\fB\&.db\fP
- A directory holding the database with metadata and hashes of the files
- currently on disk and available from peers.
- .UNINDENT
- .SH CONFIG FILE FORMAT
- .sp
- The following shows an example of a default configuration file (IDs will differ):
- .sp
- \fBNOTE:\fP
- .INDENT 0.0
- .INDENT 3.5
- The config examples are present for illustration. Do \fBnot\fP copy them
- entirely to use as your config. They are likely out\-of\-date and the values
- may no longer correspond to the defaults.
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <configuration version="37">
- <folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
- <filesystemType>basic</filesystemType>
- <device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" introducedBy="">
- <encryptionPassword></encryptionPassword>
- </device>
- <minDiskFree unit="%">1</minDiskFree>
- <versioning>
- <cleanupIntervalS>3600</cleanupIntervalS>
- <fsPath></fsPath>
- <fsType>basic</fsType>
- </versioning>
- <copiers>0</copiers>
- <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
- <hashers>0</hashers>
- <order>random</order>
- <ignoreDelete>false</ignoreDelete>
- <scanProgressIntervalS>0</scanProgressIntervalS>
- <pullerPauseS>0</pullerPauseS>
- <maxConflicts>\-1</maxConflicts>
- <disableSparseFiles>false</disableSparseFiles>
- <disableTempIndexes>false</disableTempIndexes>
- <paused>false</paused>
- <weakHashThresholdPct>25</weakHashThresholdPct>
- <markerName>.stfolder</markerName>
- <copyOwnershipFromParent>false</copyOwnershipFromParent>
- <modTimeWindowS>0</modTimeWindowS>
- <maxConcurrentWrites>2</maxConcurrentWrites>
- <disableFsync>false</disableFsync>
- <blockPullOrder>standard</blockPullOrder>
- <copyRangeMethod>standard</copyRangeMethod>
- <caseSensitiveFS>false</caseSensitiveFS>
- <junctionsAsDirs>false</junctionsAsDirs>
- <syncOwnership>false</syncOwnership>
- <sendOwnership>false</sendOwnership>
- <syncXattrs>false</syncXattrs>
- <sendXattrs>false</sendXattrs>
- </folder>
- <device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
- <address>dynamic</address>
- <paused>false</paused>
- <autoAcceptFolders>false</autoAcceptFolders>
- <maxSendKbps>0</maxSendKbps>
- <maxRecvKbps>0</maxRecvKbps>
- <ignoredFolder time="2022\-01\-09T19:09:52Z" id="br63e\-wyhb7" label="Foo"></ignoredFolder>
- <maxRequestKiB>0</maxRequestKiB>
- <untrusted>false</untrusted>
- <remoteGUIPort>0</remoteGUIPort>
- </device>
- <gui enabled="true" tls="false" debugging="false">
- <address>127.0.0.1:8384</address>
- <apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
- <theme>default</theme>
- </gui>
- <ldap></ldap>
- <options>
- <listenAddress>default</listenAddress>
- <globalAnnounceServer>default</globalAnnounceServer>
- <globalAnnounceEnabled>true</globalAnnounceEnabled>
- <localAnnounceEnabled>true</localAnnounceEnabled>
- <localAnnouncePort>21027</localAnnouncePort>
- <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr>
- <maxSendKbps>0</maxSendKbps>
- <maxRecvKbps>0</maxRecvKbps>
- <reconnectionIntervalS>60</reconnectionIntervalS>
- <relaysEnabled>true</relaysEnabled>
- <relayReconnectIntervalM>10</relayReconnectIntervalM>
- <startBrowser>true</startBrowser>
- <natEnabled>true</natEnabled>
- <natLeaseMinutes>60</natLeaseMinutes>
- <natRenewalMinutes>30</natRenewalMinutes>
- <natTimeoutSeconds>10</natTimeoutSeconds>
- <urAccepted>0</urAccepted>
- <urSeen>0</urSeen>
- <urUniqueID></urUniqueID>
- <urURL>https://data.syncthing.net/newdata</urURL>
- <urPostInsecurely>false</urPostInsecurely>
- <urInitialDelayS>1800</urInitialDelayS>
- <restartOnWakeup>true</restartOnWakeup>
- <autoUpgradeIntervalH>12</autoUpgradeIntervalH>
- <upgradeToPreReleases>false</upgradeToPreReleases>
- <keepTemporariesH>24</keepTemporariesH>
- <cacheIgnoredFiles>false</cacheIgnoredFiles>
- <progressUpdateIntervalS>5</progressUpdateIntervalS>
- <limitBandwidthInLan>false</limitBandwidthInLan>
- <minHomeDiskFree unit="%">1</minHomeDiskFree>
- <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
- <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
- <tempIndexMinBlocks>10</tempIndexMinBlocks>
- <unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
- <trafficClass>0</trafficClass>
- <setLowPriority>true</setLowPriority>
- <maxFolderConcurrency>0</maxFolderConcurrency>
- <crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
- <crashReportingEnabled>true</crashReportingEnabled>
- <stunKeepaliveStartS>180</stunKeepaliveStartS>
- <stunKeepaliveMinS>20</stunKeepaliveMinS>
- <stunServer>default</stunServer>
- <databaseTuning>auto</databaseTuning>
- <maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
- <announceLANAddresses>true</announceLANAddresses>
- <sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
- <connectionLimitEnough>0</connectionLimitEnough>
- <connectionLimitMax>0</connectionLimitMax>
- <insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
- </options>
- <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>
- <defaults>
- <folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
- <filesystemType>basic</filesystemType>
- <device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" introducedBy="">
- <encryptionPassword></encryptionPassword>
- </device>
- <minDiskFree unit="%">1</minDiskFree>
- <versioning>
- <cleanupIntervalS>3600</cleanupIntervalS>
- <fsPath></fsPath>
- <fsType>basic</fsType>
- </versioning>
- <copiers>0</copiers>
- <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
- <hashers>0</hashers>
- <order>random</order>
- <ignoreDelete>false</ignoreDelete>
- <scanProgressIntervalS>0</scanProgressIntervalS>
- <pullerPauseS>0</pullerPauseS>
- <maxConflicts>10</maxConflicts>
- <disableSparseFiles>false</disableSparseFiles>
- <disableTempIndexes>false</disableTempIndexes>
- <paused>false</paused>
- <weakHashThresholdPct>25</weakHashThresholdPct>
- <markerName>.stfolder</markerName>
- <copyOwnershipFromParent>false</copyOwnershipFromParent>
- <modTimeWindowS>0</modTimeWindowS>
- <maxConcurrentWrites>2</maxConcurrentWrites>
- <disableFsync>false</disableFsync>
- <blockPullOrder>standard</blockPullOrder>
- <copyRangeMethod>standard</copyRangeMethod>
- <caseSensitiveFS>false</caseSensitiveFS>
- <junctionsAsDirs>false</junctionsAsDirs>
- <syncOwnership>false</syncOwnership>
- <sendOwnership>false</sendOwnership>
- <syncXattrs>false</syncXattrs>
- <sendXattrs>false</sendXattrs>
- </folder>
- <device id="" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
- <address>dynamic</address>
- <paused>false</paused>
- <autoAcceptFolders>false</autoAcceptFolders>
- <maxSendKbps>0</maxSendKbps>
- <maxRecvKbps>0</maxRecvKbps>
- <maxRequestKiB>0</maxRequestKiB>
- <untrusted>false</untrusted>
- <remoteGUIPort>0</remoteGUIPort>
- </device>
- </defaults>
- </configuration>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .SH CONFIGURATION ELEMENT
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <configuration version="37">
- <folder></folder>
- <device></device>
- <gui></gui>
- <ldap></ldap>
- <options></options>
- <remoteIgnoredDevice></remoteIgnoredDevice>
- <defaults></defaults>
- </configuration>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .sp
- This is the root element. It has one attribute:
- .INDENT 0.0
- .TP
- .B version
- The config version. Increments whenever a change is made that requires
- migration from previous formats.
- .UNINDENT
- .sp
- It contains the elements described in the following sections and any number of
- this additional child element:
- .INDENT 0.0
- .TP
- .B remoteIgnoredDevice
- Contains the ID of the device that should be ignored. Connection attempts
- from this device are logged to the console but never displayed in the web
- GUI.
- .UNINDENT
- .SH FOLDER ELEMENT
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
- <filesystemType>basic</filesystemType>
- <device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" introducedBy="">
- <encryptionPassword></encryptionPassword>
- </device>
- <minDiskFree unit="%">1</minDiskFree>
- <versioning>
- <cleanupIntervalS>3600</cleanupIntervalS>
- <fsPath></fsPath>
- <fsType>basic</fsType>
- </versioning>
- <copiers>0</copiers>
- <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
- <hashers>0</hashers>
- <order>random</order>
- <ignoreDelete>false</ignoreDelete>
- <scanProgressIntervalS>0</scanProgressIntervalS>
- <pullerPauseS>0</pullerPauseS>
- <maxConflicts>\-1</maxConflicts>
- <disableSparseFiles>false</disableSparseFiles>
- <disableTempIndexes>false</disableTempIndexes>
- <paused>false</paused>
- <weakHashThresholdPct>25</weakHashThresholdPct>
- <markerName>.stfolder</markerName>
- <copyOwnershipFromParent>false</copyOwnershipFromParent>
- <modTimeWindowS>0</modTimeWindowS>
- <maxConcurrentWrites>2</maxConcurrentWrites>
- <disableFsync>false</disableFsync>
- <blockPullOrder>standard</blockPullOrder>
- <copyRangeMethod>standard</copyRangeMethod>
- <caseSensitiveFS>false</caseSensitiveFS>
- <junctionsAsDirs>false</junctionsAsDirs>
- <syncOwnership>false</syncOwnership>
- <sendOwnership>false</sendOwnership>
- <syncXattrs>false</syncXattrs>
- <sendXattrs>false</sendXattrs>
- </folder>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .sp
- One or more \fBfolder\fP elements must be present in the file. Each element
- describes one folder. The following attributes may be set on the \fBfolder\fP
- element:
- .INDENT 0.0
- .TP
- .B id (mandatory)
- The folder ID, which must be unique.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B label
- The label of a folder is a human readable and descriptive local name. May
- be different on each device, empty, and/or identical to other folder
- labels. (optional)
- .UNINDENT
- .INDENT 0.0
- .TP
- .B filesystemType
- The internal file system implementation used to access this folder, detailed
- in a separate chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B path (mandatory)
- The path to the directory where the folder is stored on this
- device; not sent to other devices.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B type
- Controls how the folder is handled by Syncthing. Possible values are:
- .INDENT 7.0
- .TP
- .B \fBsendreceive\fP
- The folder is in default mode. Sending local and accepting remote changes.
- Note that this type was previously called “readwrite” which is deprecated
- but still accepted in incoming configs.
- .TP
- .B \fBsendonly\fP
- The folder is in “send only” mode – it will not be modified by
- Syncthing on this device.
- Note that this type was previously called “readonly” which is deprecated
- but still accepted in incoming configs.
- .TP
- .B \fBreceiveonly\fP
- The folder is in “receive only” mode – it will not propagate
- changes to other devices.
- .TP
- .B \fBreceiveencrypted\fP
- Must be used on untrusted devices, where the data cannot be decrypted
- because no folder password was entered. See untrusted\&.
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B rescanIntervalS
- The rescan interval, in seconds. Can be set to \fB0\fP to disable when external
- plugins are used to trigger rescans.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B fsWatcherEnabled
- If set to \fBtrue\fP, this detects changes to files in the folder and scans them.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B fsWatcherDelayS
- The duration during which changes detected are accumulated, before a scan is
- scheduled (only takes effect if \fI\%fsWatcherEnabled\fP is set to \fBtrue\fP).
- .UNINDENT
- .INDENT 0.0
- .TP
- .B ignorePerms
- If \fBtrue\fP, files originating from this folder will be announced to remote
- devices with the “no permission bits” flag. The remote devices will use
- whatever their default permission setting is when creating the files. The
- primary use case is for file systems that do not support permissions, such
- as FAT, or environments where changing permissions is impossible.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B autoNormalize
- Automatically correct UTF\-8 normalization errors found in file names. The
- mechanism and how to set it up is described in a separate chapter\&.
- .UNINDENT
- .sp
- The following child elements may exist:
- .INDENT 0.0
- .TP
- .B device
- These must have the \fBid\fP attribute and can have an \fBintroducedBy\fP
- attribute, identifying the device that introduced us to share this folder
- with the given device. If the original introducer unshares this folder with
- this device, our device will follow and unshare the folder (subject to
- \fI\%skipIntroductionRemovals\fP being \fBfalse\fP on the introducer device).
- .sp
- All mentioned devices are those that will be sharing the folder in question.
- Each mentioned device must have a separate \fBdevice\fP element later in the file.
- It is customary that the local device ID is included in all folders.
- Syncthing will currently add this automatically if it is not present in
- the configuration file.
- .sp
- The \fBencryptionPassword\fP sub\-element contains the secret needed to decrypt
- this folder’s data on the remote device. If left empty, the data is plainly
- accessible (but still protected by the transport encryption). The mechanism
- and how to set it up is described in a separate chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B minDiskFree
- The minimum required free space that should be available on the disk this
- folder resides. The folder will be stopped when the value drops below the
- threshold. The element content is interpreted according to the given
- \fBunit\fP attribute. Accepted \fBunit\fP values are \fB%\fP (percent of the disk
- / volume size), \fBkB\fP, \fBMB\fP, \fBGB\fP and \fBTB\fP\&. Set to zero to disable.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B versioning
- Specifies a versioning configuration.
- .sp
- \fBSEE ALSO:\fP
- .INDENT 7.0
- .INDENT 3.5
- versioning
- .UNINDENT
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B copiers
- .TP
- .B hashers
- The number of copier and hasher routines to use, or \fB0\fP for the
- system determined optimums. These are low\-level performance options for
- advanced users only; do not change unless requested to or you’ve actually
- read and understood the code yourself. :)
- .UNINDENT
- .INDENT 0.0
- .TP
- .B pullerMaxPendingKiB
- Controls when we stop sending requests to other devices once we’ve got this
- much unserved requests. The number of pullers is automatically adjusted
- based on this desired amount of outstanding request data.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B order
- The order in which needed files should be pulled from the cluster. It has
- no effect when the folder type is “send only”. The possibles values are:
- .INDENT 7.0
- .TP
- .B \fBrandom\fP (default)
- Pull files in random order. This optimizes for balancing resources among
- the devices in a cluster.
- .TP
- .B \fBalphabetic\fP
- Pull files ordered by file name alphabetically.
- .TP
- .B \fBsmallestFirst\fP, \fBlargestFirst\fP
- Pull files ordered by file size; smallest and largest first respectively.
- .TP
- .B \fBoldestFirst\fP, \fBnewestFirst\fP
- Pull files ordered by modification time; oldest and newest first
- respectively.
- .UNINDENT
- .sp
- Note that the scanned files are sent in batches and the sorting is applied
- only to the already discovered files. This means the sync might start with
- a 1 GB file even if there is 1 KB file available on the source device until
- the 1 KB becomes known to the pulling device.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B ignoreDelete
- .
- \fBWARNING:\fP
- .INDENT 7.0
- .INDENT 3.5
- Enabling this is highly discouraged \- use at your own risk. You have been warned.
- .UNINDENT
- .UNINDENT
- .sp
- When set to \fBtrue\fP, this device will pretend not to see instructions to
- delete files from other devices. The mechanism is described in a
- separate chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B scanProgressIntervalS
- The interval in seconds with which scan progress information is sent to the GUI. Setting to \fB0\fP
- will cause Syncthing to use the default value of two.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B pullerPauseS
- Tweak for rate limiting the puller when it retries pulling files. Don’t
- change this unless you know what you’re doing.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxConflicts
- The maximum number of conflict copies to keep around for any given file.
- The default, \fB\-1\fP, means an unlimited number. Setting this to \fB0\fP disables
- conflict copies altogether.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B disableSparseFiles
- By default, blocks containing all zeros are not written, causing files
- to be sparse on filesystems that support this feature. When set to \fBtrue\fP,
- sparse files will not be created.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B disableTempIndexes
- By default, devices exchange information about blocks available in
- transfers that are still in progress, which allows other devices to
- download parts of files that are not yet fully downloaded on your own
- device, essentially making transfers more torrent like. When set to
- \fBtrue\fP, such information is not exchanged for this folder.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B paused
- True if this folder is (temporarily) suspended.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B weakHashThresholdPct
- Use weak hash if more than the given percentage of the file has changed. Set
- to \fB\-1\fP to always use weak hash. Default is \fB25\fP\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B markerName
- Name of a directory or file in the folder root to be used as
- marker\-faq\&. Default is \fB\&.stfolder\fP\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B copyOwnershipFromParent
- On Unix systems, tries to copy file/folder ownership from the parent directory (the directory it’s located in).
- Requires running Syncthing as a privileged user, or granting it additional capabilities (e.g. CAP_CHOWN on Linux).
- .UNINDENT
- .INDENT 0.0
- .TP
- .B modTimeWindowS
- Allowed modification timestamp difference when comparing files for
- equivalence. To be used on file systems which have unstable
- modification timestamps that might change after being recorded
- during the last write operation. Default is \fB2\fP on Android when the
- folder is located on a FAT partition, and \fB0\fP otherwise.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxConcurrentWrites
- Maximum number of concurrent write operations while syncing. Increasing this might increase or
- decrease disk performance, depending on the underlying storage. Default is \fB2\fP\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B disableFsync
- .
- \fBWARNING:\fP
- .INDENT 7.0
- .INDENT 3.5
- This is a known insecure option \- use at your own risk.
- .UNINDENT
- .UNINDENT
- .sp
- Disables committing file operations to disk before recording them in the
- database. Disabling fsync can lead to data corruption. The mechanism is
- described in a separate chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B blockPullOrder
- Order in which the blocks of a file are downloaded. This option controls how quickly different parts of the
- file spread between the connected devices, at the cost of causing strain on the storage.
- .sp
- Available options:
- .INDENT 7.0
- .TP
- .B \fBstandard\fP (default)
- The blocks of a file are split into N equal continuous sequences, where N is the number of connected
- devices. Each device starts downloading its own sequence, after which it picks other devices
- sequences at random. Provides acceptable data distribution and minimal spinning disk strain.
- .TP
- .B \fBrandom\fP
- The blocks of a file are downloaded in a random order. Provides great data distribution, but very taxing on
- spinning disk drives.
- .TP
- .B \fBinOrder\fP
- The blocks of a file are downloaded sequentially, from start to finish. Spinning disk drive friendly, but provides
- no improvements to data distribution.
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B copyRangeMethod
- Provides a choice of method for copying data between files. This can be
- used to optimise copies on network filesystems, improve speed of large
- copies or clone the data using copy\-on\-write functionality if the underlying
- filesystem supports it. The mechanism is described in a separate
- chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B caseSensitiveFS
- Affects performance by disabling the extra safety checks for case
- insensitive filesystems. The mechanism and how to set it up is described in
- a separate chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B junctionsAsDirs
- NTFS directory junctions are treated as ordinary directories, if this is set
- to \fBtrue\fP\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B syncOwnership
- File and directory ownership is synced when this is set to \fBtrue\fP\&. See
- /advanced/folder\-sync\-ownership for more information.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B sendOwnership
- File and directory ownership information is scanned when this is set to
- \fBtrue\fP\&. See /advanced/folder\-send\-ownership for more information.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B syncXattrs
- File and directory extended attributes are synced when this is set to
- \fBtrue\fP\&. See /advanced/folder\-sync\-xattrs for more information.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B sendXattrs
- File and directory extended attributes are scanned and sent to other
- devices when this is set to \fBtrue\fP\&. See
- /advanced/folder\-send\-xattrs for more information.
- .UNINDENT
- .SH DEVICE ELEMENT
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <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">
- <address>dynamic</address>
- <paused>false</paused>
- <autoAcceptFolders>false</autoAcceptFolders>
- <maxSendKbps>0</maxSendKbps>
- <maxRecvKbps>0</maxRecvKbps>
- <ignoredFolder time="2022\-01\-09T19:09:52Z" id="br63e\-wyhb7" label="Foo"></ignoredFolder>
- <maxRequestKiB>0</maxRequestKiB>
- <untrusted>false</untrusted>
- <remoteGUIPort>0</remoteGUIPort>
- </device>
- <device id="2CYF2WQ\-AKZO2QZ\-JAKWLYD\-AGHMQUM\-BGXUOIS\-GYILW34\-HJG3DUK\-LRRYQAR" name="syno local" compression="metadata" introducer="true" skipIntroductionRemovals="false" introducedBy="">
- <address>tcp://192.0.2.1:22001</address>
- <paused>true</paused>
- <allowedNetwork>192.168.0.0/16</allowedNetwork>
- <autoAcceptFolders>false</autoAcceptFolders>
- <maxSendKbps>100</maxSendKbps>
- <maxRecvKbps>100</maxRecvKbps>
- <maxRequestKiB>65536</maxRequestKiB>
- <untrusted>false</untrusted>
- <remoteGUIPort>8384</remoteGUIPort>
- </device>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .sp
- One or more \fBdevice\fP elements must be present in the file. Each element
- describes a device participating in the cluster. It is customary to include a
- \fBdevice\fP element for the local device; Syncthing will currently add one if
- it is not present. The following attributes may be set on the \fBdevice\fP
- element:
- .INDENT 0.0
- .TP
- .B id (mandatory)
- The device ID\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B name
- A friendly name for the device. (optional)
- .UNINDENT
- .INDENT 0.0
- .TP
- .B compression
- Whether to use protocol compression when sending messages to this device.
- The possible values are:
- .INDENT 7.0
- .TP
- .B \fBmetadata\fP
- Compress metadata packets, such as index information. Metadata is
- usually very compression friendly so this is a good default.
- .TP
- .B \fBalways\fP
- Compress all packets, including file data. This is recommended if the
- folders contents are mainly compressible data such as documents or
- text files.
- .TP
- .B \fBnever\fP
- Disable all compression.
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B introducer
- Set to true if this device should be trusted as an introducer, i.e. we
- should copy their list of devices per folder when connecting.
- .sp
- \fBSEE ALSO:\fP
- .INDENT 7.0
- .INDENT 3.5
- introducer
- .UNINDENT
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B skipIntroductionRemovals
- Set to true if you wish to follow only introductions and not de\-introductions.
- For example, if this is set, we would not remove a device that we were introduced
- to even if the original introducer is no longer listing the remote device as known.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B introducedBy
- Defines which device has introduced us to this device. Used only for following de\-introductions.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B certName
- The device certificate’s common name, if it is not the default “syncthing”.
- .UNINDENT
- .sp
- From the following child elements at least one \fBaddress\fP child must exist.
- .INDENT 0.0
- .TP
- .B address (mandatory: At least one must be present.)
- Contains an address or host name to use when attempting to connect to this device.
- Entries other than \fBdynamic\fP need a protocol specific prefix. For the TCP protocol
- the prefixes \fBtcp://\fP (dual\-stack), \fBtcp4://\fP (IPv4 only) or \fBtcp6://\fP (IPv6 only) can be used.
- The prefixes for the QUIC protocol are analogous: \fBquic://\fP, \fBquic4://\fP and \fBquic6://\fP
- Note that IP addresses need not use IPv4 or IPv6 prefixes; these are optional. Accepted formats are:
- .INDENT 7.0
- .TP
- .B IPv4 address (\fBtcp://192.0.2.42\fP)
- The default port (22000) is used.
- .TP
- .B IPv4 address and port (\fBtcp://192.0.2.42:12345\fP)
- The address and port is used as given.
- .TP
- .B IPv6 address (\fBtcp://[2001:db8::23:42]\fP)
- The default port (22000) is used. The address must be enclosed in
- square brackets.
- .TP
- .B IPv6 address and port (\fBtcp://[2001:db8::23:42]:12345\fP)
- The address and port is used as given. The address must be enclosed in
- square brackets.
- .TP
- .B Host name (\fBtcp6://fileserver\fP)
- The host name will be used on the default port (22000) and connections
- will be attempted only via IPv6.
- .TP
- .B Host name and port (\fBtcp://fileserver:12345\fP)
- The host name will be used on the given port and connections will be
- attempted via both IPv4 and IPv6, depending on name resolution.
- .TP
- .B \fBdynamic\fP
- The word \fBdynamic\fP (without any prefix) means to use local and
- global discovery to find the device.
- .UNINDENT
- .sp
- You can set multiple addresses \fIand\fP combine it with the \fBdynamic\fP keyword
- for example:
- .INDENT 7.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <device id="...">
- <address>tcp://192.0.2.1:22001</address>
- <address>quic://192.0.1.254:22000</address>
- <address>dynamic</address>
- </device>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B paused
- True if synchronization with this devices is (temporarily) suspended.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B allowedNetwork
- If given, this restricts connections to this device to only this network.
- The mechanism is described in detail in a separate chapter).
- .UNINDENT
- .INDENT 0.0
- .TP
- .B autoAcceptFolders
- If \fBtrue\fP, folders shared from this remote device are automatically added
- and synced locally under the \fI\%default path\fP\&. For the
- folder name, Syncthing tries to use the label from the remote device, and if
- the same label already exists, it then tries to use the folder’s ID. If
- that exists as well, the folder is just offered to accept manually. A local
- folder already added with the same ID will just be shared rather than
- created separately.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxSendKbps
- Maximum send rate to use for this device. Unit is kibibytes/second, despite
- the config name looking like kilobits/second.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxRecvKbps
- Maximum receive rate to use for this device. Unit is kibibytes/second,
- despite the config name looking like kilobits/second.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B ignoredFolder
- Contains the ID of the folder that should be ignored. This folder will
- always be skipped when advertised from the containing remote device,
- i.e. this will be logged, but there will be no dialog shown in the web GUI.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxRequestKiB
- Maximum amount of data to have outstanding in requests towards this device.
- Unit is kibibytes.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B remoteGUIPort
- If set to a positive integer, the GUI will display an HTTP link to the IP
- address which is currently used for synchronization. Only the TCP port is
- exchanged for the value specified here. Note that any port forwarding or
- firewall settings need to be done manually and the link will probably not
- work for link\-local IPv6 addresses because of modern browser limitations.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B untrusted
- This boolean value marks a particular device as untrusted, which disallows
- ever sharing any unencrypted data with it. Every folder shared with that
- device then needs an encryption password set, or must already be of the
- “receive encrypted” type locally. Refer to the detailed explanation under
- untrusted\&.
- .UNINDENT
- .SH GUI ELEMENT
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <gui enabled="true" tls="false" debugging="false">
- <address>127.0.0.1:8384</address>
- <apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
- <theme>default</theme>
- </gui>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .sp
- There must be exactly one \fBgui\fP element. The GUI configuration is also used by
- the /dev/rest and the /dev/events\&. The following attributes may be
- set on the \fBgui\fP element:
- .INDENT 0.0
- .TP
- .B enabled
- If not \fBtrue\fP, the GUI and API will not be started.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B tls
- If set to \fBtrue\fP, TLS (HTTPS) will be enforced. Non\-HTTPS requests will
- be redirected to HTTPS. When set to \fBfalse\fP, TLS connections are
- still possible but not required.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B debugging
- This enables /users/profiling and additional endpoints in the REST
- API, see /rest/debug\&.
- .UNINDENT
- .sp
- The following child elements may be present:
- .INDENT 0.0
- .TP
- .B address (mandatory: Exactly one element must be present.)
- Set the listen address. Allowed address formats are:
- .INDENT 7.0
- .TP
- .B IPv4 address and port (\fB127.0.0.1:8384\fP)
- The address and port are used as given.
- .TP
- .B IPv6 address and port (\fB[::1]:8384\fP)
- The address and port are used as given. The address must be enclosed in
- square brackets.
- .TP
- .B Wildcard and port (\fB0.0.0.0:12345\fP, \fB[::]:12345\fP, \fB:12345\fP)
- These are equivalent and will result in Syncthing listening on all
- interfaces via both IPv4 and IPv6.
- .TP
- .B UNIX socket location (\fB/var/run/st.sock\fP)
- If the address is an absolute path it is interpreted as the path to a UNIX socket.
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B unixSocketPermissions
- When \fBaddress\fP is set to a UNIX socket location, set this to an octal value
- to override the default permissions of the socket.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B user
- Set to require authentication.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B password
- Contains the bcrypt hash of the real password.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B apikey
- If set, this is the API key that enables usage of the REST interface.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B insecureAdminAccess
- If true, this allows access to the web GUI from outside (i.e. not localhost)
- without authorization. A warning will displayed about this setting on startup.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B insecureSkipHostcheck
- When the GUI / API is bound to localhost, we enforce that the \fBHost\fP
- header looks like localhost. This option bypasses that check.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B insecureAllowFrameLoading
- Allow rendering the GUI within an \fB<iframe>\fP, \fB<frame>\fP or \fB<object>\fP
- by not setting the \fBX\-Frame\-Options: SAMEORIGIN\fP HTTP header. This may be
- needed for serving the Syncthing GUI as part of a website through a proxy.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B theme
- The name of the theme to use.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B authMode
- Authentication mode to use. If not present, the authentication mode (static)
- is controlled by the presence of user/password fields for backward compatibility.
- .INDENT 7.0
- .TP
- .B \fBstatic\fP
- Authentication using user and password.
- .TP
- .B \fBldap\fP
- LDAP authentication. Requires ldap top level config section to be present.
- .UNINDENT
- .UNINDENT
- .SH LDAP ELEMENT
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <ldap>
- <address>localhost:389</address>
- <bindDN>cn=%s,ou=users,dc=syncthing,dc=net</bindDN>
- <transport>nontls</transport>
- <insecureSkipVerify>false</insecureSkipVerify>
- </ldap>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .sp
- The \fBldap\fP element contains LDAP configuration options. The mechanism is
- described in detail under ldap\&.
- .INDENT 0.0
- .TP
- .B address (mandatory)
- .INDENT 7.0
- .INDENT 3.5
- LDAP server address (server:port).
- .UNINDENT
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B bindDN (mandatory)
- .INDENT 7.0
- .INDENT 3.5
- BindDN for user authentication.
- Special \fB%s\fP variable should be used to pass username to LDAP.
- .UNINDENT
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B transport
- .INDENT 7.0
- .TP
- .B \fBnontls\fP
- Non secure connection.
- .TP
- .B \fBtls\fP
- TLS secured connection.
- .TP
- .B \fBstarttls\fP
- StartTLS connection mode.
- .UNINDENT
- .UNINDENT
- .INDENT 0.0
- .TP
- .B insecureSkipVerify
- Skip verification (\fBtrue\fP or \fBfalse\fP).
- .UNINDENT
- .INDENT 0.0
- .TP
- .B searchBaseDN
- Base DN for user searches.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B searchFilter
- Search filter for user searches.
- .UNINDENT
- .SH OPTIONS ELEMENT
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <options>
- <listenAddress>default</listenAddress>
- <globalAnnounceServer>default</globalAnnounceServer>
- <globalAnnounceEnabled>true</globalAnnounceEnabled>
- <localAnnounceEnabled>true</localAnnounceEnabled>
- <localAnnouncePort>21027</localAnnouncePort>
- <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr>
- <maxSendKbps>0</maxSendKbps>
- <maxRecvKbps>0</maxRecvKbps>
- <reconnectionIntervalS>60</reconnectionIntervalS>
- <relaysEnabled>true</relaysEnabled>
- <relayReconnectIntervalM>10</relayReconnectIntervalM>
- <startBrowser>true</startBrowser>
- <natEnabled>true</natEnabled>
- <natLeaseMinutes>60</natLeaseMinutes>
- <natRenewalMinutes>30</natRenewalMinutes>
- <natTimeoutSeconds>10</natTimeoutSeconds>
- <urAccepted>0</urAccepted>
- <urSeen>0</urSeen>
- <urUniqueID></urUniqueID>
- <urURL>https://data.syncthing.net/newdata</urURL>
- <urPostInsecurely>false</urPostInsecurely>
- <urInitialDelayS>1800</urInitialDelayS>
- <restartOnWakeup>true</restartOnWakeup>
- <autoUpgradeIntervalH>12</autoUpgradeIntervalH>
- <upgradeToPreReleases>false</upgradeToPreReleases>
- <keepTemporariesH>24</keepTemporariesH>
- <cacheIgnoredFiles>false</cacheIgnoredFiles>
- <progressUpdateIntervalS>5</progressUpdateIntervalS>
- <limitBandwidthInLan>false</limitBandwidthInLan>
- <minHomeDiskFree unit="%">1</minHomeDiskFree>
- <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
- <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
- <tempIndexMinBlocks>10</tempIndexMinBlocks>
- <unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
- <trafficClass>0</trafficClass>
- <setLowPriority>true</setLowPriority>
- <maxFolderConcurrency>0</maxFolderConcurrency>
- <crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
- <crashReportingEnabled>true</crashReportingEnabled>
- <stunKeepaliveStartS>180</stunKeepaliveStartS>
- <stunKeepaliveMinS>20</stunKeepaliveMinS>
- <stunServer>default</stunServer>
- <databaseTuning>auto</databaseTuning>
- <maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
- <announceLANAddresses>true</announceLANAddresses>
- <sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
- <connectionLimitEnough>0</connectionLimitEnough>
- <connectionLimitMax>0</connectionLimitMax>
- <insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
- </options>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .sp
- The \fBoptions\fP element contains all other global configuration options.
- .INDENT 0.0
- .TP
- .B listenAddress
- The listen address for incoming sync connections. See
- \fI\%Listen Addresses\fP for the allowed syntax.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B globalAnnounceServer
- A URI to a global announce (discovery) server, or the word \fBdefault\fP to
- include the default servers. Any number of globalAnnounceServer elements
- may be present. The syntax for non\-default entries is that of an HTTP or
- HTTPS URL. A number of options may be added as query options to the URL:
- \fBinsecure\fP to prevent certificate validation (required for HTTP URLs)
- and \fBid=<device ID>\fP to perform certificate pinning. The device ID to
- use is printed by the discovery server on startup.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B globalAnnounceEnabled
- Whether to announce this device to the global announce (discovery) server,
- and also use it to look up other devices.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B localAnnounceEnabled
- Whether to send announcements to the local LAN, also use such
- announcements to find other devices.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B localAnnouncePort
- The port on which to listen and send IPv4 broadcast announcements to.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B localAnnounceMCAddr
- The group address and port to join and send IPv6 multicast announcements on.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxSendKbps
- Outgoing data rate limit, in kibibytes per second.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxRecvKbps
- Incoming data rate limits, in kibibytes per second.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B reconnectionIntervalS
- The number of seconds to wait between each attempt to connect to currently
- unconnected devices.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B relaysEnabled
- When \fBtrue\fP, relays will be connected to and potentially used for device to device connections.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B relayReconnectIntervalM
- Sets the interval, in minutes, between relay reconnect attempts.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B startBrowser
- Whether to attempt to start a browser to show the GUI when Syncthing starts.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B natEnabled
- Whether to attempt to perform a UPnP and NAT\-PMP port mapping for
- incoming sync connections.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B natLeaseMinutes
- Request a lease for this many minutes; zero to request a permanent lease.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B natRenewalMinutes
- Attempt to renew the lease after this many minutes.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B natTimeoutSeconds
- When scanning for UPnP devices, wait this long for responses.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B urAccepted
- Whether the user has accepted to submit anonymous usage data. The default,
- \fB0\fP, mean the user has not made a choice, and Syncthing will ask at some
- point in the future. \fB\-1\fP means no, a number above zero means that that
- version of usage reporting has been accepted.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B urSeen
- The highest usage reporting version that has already been shown in the web GUI.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B urUniqueID
- The unique ID sent together with the usage report. Generated when usage
- reporting is enabled.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B urURL
- The URL to post usage report data to, when enabled.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B urPostInsecurely
- When true, the UR URL can be http instead of https, or have a self\-signed
- certificate. The default is \fBfalse\fP\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B urInitialDelayS
- The time to wait from startup for the first usage report to be sent. Allows
- the system to stabilize before reporting statistics.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B restartOnWakeup
- Whether to perform a restart of Syncthing when it is detected that we are
- waking from sleep mode (i.e. an unfolding laptop).
- .UNINDENT
- .INDENT 0.0
- .TP
- .B autoUpgradeIntervalH
- Check for a newer version after this many hours. Set to \fB0\fP to disable
- automatic upgrades.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B upgradeToPreReleases
- If \fBtrue\fP, automatic upgrades include release candidates (see
- releases).
- .UNINDENT
- .INDENT 0.0
- .TP
- .B keepTemporariesH
- Keep temporary failed transfers for this many hours. While the temporaries
- are kept, the data they contain need not be transferred again.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B cacheIgnoredFiles
- Whether to cache the results of ignore pattern evaluation. Performance
- at the price of memory. Defaults to \fBfalse\fP as the cost for evaluating
- ignores is usually not significant.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B progressUpdateIntervalS
- How often in seconds the progress of ongoing downloads is made available to
- the GUI.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B limitBandwidthInLan
- Whether to apply bandwidth limits to devices in the same broadcast domain
- as the local device.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B minHomeDiskFree
- The minimum required free space that should be available on the partition
- holding the configuration and index. The element content is interpreted
- according to the given \fBunit\fP attribute. Accepted \fBunit\fP values are
- \fB%\fP (percent of the disk / volume size), \fBkB\fP, \fBMB\fP, \fBGB\fP and
- \fBTB\fP\&. Set to zero to disable.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B releasesURL
- The URL from which release information is loaded, for automatic upgrades.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B alwaysLocalNet
- Network that should be considered as local given in CIDR notation.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B overwriteRemoteDeviceNamesOnConnect
- If set, device names will always be overwritten with the name given by
- remote on each connection. By default, the name that the remote device
- announces will only be adopted when a name has not already been set.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B tempIndexMinBlocks
- When exchanging index information for incomplete transfers, only take
- into account files that have at least this many blocks.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B unackedNotificationID
- ID of a notification to be displayed in the web GUI. Will be removed once
- the user acknowledged it (e.g. an transition notice on an upgrade).
- .UNINDENT
- .INDENT 0.0
- .TP
- .B trafficClass
- Specify a type of service (TOS)/traffic class of outgoing packets.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B stunServer
- Server to be used for STUN, given as ip:port. The keyword \fBdefault\fP gets
- expanded to
- \fBstun.callwithus.com:3478\fP, \fBstun.counterpath.com:3478\fP,
- \fBstun.counterpath.net:3478\fP, \fBstun.ekiga.net:3478\fP,
- \fBstun.ideasip.com:3478\fP, \fBstun.internetcalls.com:3478\fP,
- \fBstun.schlund.de:3478\fP, \fBstun.sipgate.net:10000\fP,
- \fBstun.sipgate.net:3478\fP, \fBstun.voip.aebc.com:3478\fP,
- \fBstun.voiparound.com:3478\fP, \fBstun.voipbuster.com:3478\fP,
- \fBstun.voipstunt.com:3478\fP and \fBstun.xten.com:3478\fP (this is the default).
- .UNINDENT
- .INDENT 0.0
- .TP
- .B stunKeepaliveStartS
- Interval in seconds between contacting a STUN server to maintain NAT
- mapping. Default is \fB24\fP and you can set it to \fB0\fP to disable contacting
- STUN servers. The interval is automatically reduced if needed, down to a
- minimum of \fI\%stunKeepaliveMinS\fP\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B stunKeepaliveMinS
- Minimum for the \fI\%stunKeepaliveStartS\fP interval, in seconds.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B setLowPriority
- Syncthing will attempt to lower its process priority at startup.
- Specifically: on Linux, set itself to a separate process group, set the
- niceness level of that process group to nine and the I/O priority to
- best effort level five; on other Unixes, set the process niceness level
- to nine; on Windows, set the process priority class to below normal. To
- disable this behavior, for example to control process priority yourself
- as part of launching Syncthing, set this option to \fBfalse\fP\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxFolderConcurrency
- This option controls how many folders may concurrently be in I/O\-intensive
- operations such as syncing or scanning. The mechanism is described in
- detail in a separate chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B crashReportingURL
- Server URL where automatic crash reports will be sent if
- enabled.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B crashReportingEnabled
- Switch to opt out from the automatic crash reporting
- feature. Set \fBfalse\fP to keep Syncthing from sending panic logs on serious
- troubles. Defaults to \fBtrue\fP, to help the developers troubleshoot.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B databaseTuning
- Controls how Syncthing uses the backend key\-value database that stores the
- index data and other persistent data it needs. The available options and
- implications are explained in a separate chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B maxConcurrentIncomingRequestKiB
- This limits how many bytes we have “in the air” in the form of response data
- being read and processed.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B announceLANAddresses
- Enable (the default) or disable announcing private (RFC1918) LAN IP
- addresses to global discovery.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B sendFullIndexOnUpgrade
- Controls whether all index data is resent when an upgrade has happened,
- equivalent to starting Syncthing with \fB\-\-reset\-deltas\fP\&. This used
- to be the default behavior in older versions, but is mainly useful as a
- troubleshooting step and causes high database churn. The default is now
- \fBfalse\fP\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B featureFlag
- Feature flags are simple strings that, when added to the configuration, may
- unleash unfinished or still\-in\-development features to allow early user
- testing. Any supported value will be separately announced with the feature,
- so that regular users do not enable it by accident.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B connectionLimitEnough
- The number of connections at which we stop trying to connect to more
- devices, zero meaning no limit. Does not affect incoming connections. The
- mechanism is described in detail in a separate chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B connectionLimitMax
- The maximum number of connections which we will allow in total, zero meaning
- no limit. Affects incoming connections and prevents attempting outgoing
- connections. The mechanism is described in detail in a separate
- chapter\&.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B insecureAllowOldTLSVersions
- Only for compatibility with old versions of Syncthing on remote devices, as
- detailed in /advanced/option\-insecure\-allow\-old\-tls\-versions\&.
- .UNINDENT
- .SH DEFAULTS ELEMENT
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- <defaults>
- <folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
- <filesystemType>basic</filesystemType>
- <device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" introducedBy="">
- <encryptionPassword></encryptionPassword>
- </device>
- <minDiskFree unit="%">1</minDiskFree>
- <versioning>
- <cleanupIntervalS>3600</cleanupIntervalS>
- <fsPath></fsPath>
- <fsType>basic</fsType>
- </versioning>
- <copiers>0</copiers>
- <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
- <hashers>0</hashers>
- <order>random</order>
- <ignoreDelete>false</ignoreDelete>
- <scanProgressIntervalS>0</scanProgressIntervalS>
- <pullerPauseS>0</pullerPauseS>
- <maxConflicts>10</maxConflicts>
- <disableSparseFiles>false</disableSparseFiles>
- <disableTempIndexes>false</disableTempIndexes>
- <paused>false</paused>
- <weakHashThresholdPct>25</weakHashThresholdPct>
- <markerName>.stfolder</markerName>
- <copyOwnershipFromParent>false</copyOwnershipFromParent>
- <modTimeWindowS>0</modTimeWindowS>
- <maxConcurrentWrites>2</maxConcurrentWrites>
- <disableFsync>false</disableFsync>
- <blockPullOrder>standard</blockPullOrder>
- <copyRangeMethod>standard</copyRangeMethod>
- <caseSensitiveFS>false</caseSensitiveFS>
- <junctionsAsDirs>false</junctionsAsDirs>
- </folder>
- <device id="" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
- <address>dynamic</address>
- <paused>false</paused>
- <autoAcceptFolders>false</autoAcceptFolders>
- <maxSendKbps>0</maxSendKbps>
- <maxRecvKbps>0</maxRecvKbps>
- <maxRequestKiB>0</maxRequestKiB>
- <untrusted>false</untrusted>
- <remoteGUIPort>0</remoteGUIPort>
- </device>
- <ignores>
- <line>!foo2</line>
- <line>// comment</line>
- <line>(?d).DS_Store</line>
- <line>*2</line>
- <line>qu*</line>
- </ignores>
- </defaults>
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .sp
- The \fBdefaults\fP element describes a template for newly added device and folder
- options. These will be used when adding a new remote device or folder, either
- through the GUI or the command line interface. The following child elements can
- be present in the \fBdefaults\fP element:
- .INDENT 0.0
- .TP
- .B device
- Template for a \fBdevice\fP element, with the same internal structure. Any
- fields here will be used for a newly added remote device. The \fBid\fP
- attribute is meaningless in this context.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B folder
- Template for a \fBfolder\fP element, with the same internal structure. Any
- fields here will be used for a newly added shared folder. The \fBid\fP
- attribute is meaningless in this context.
- .sp
- The UI will propose to create new folders at the path given in the \fBpath\fP
- attribute (used to be \fBdefaultFolderPath\fP under \fBoptions\fP). It also
- applies to folders automatically accepted from a remote device.
- .sp
- Even sharing with other remote devices can be done in the template by
- including the appropriate \fI\%folder.device\fP element underneath.
- .UNINDENT
- .INDENT 0.0
- .TP
- .B ignores
- New in version 1.19.0.
- .sp
- Template for the ignore patterns applied to new
- folders. These are copied to the \fB\&.stignore\fP file when a folder is
- automatically accepted from a remote device. The GUI uses them to pre\-fill
- the respective field when adding a new folder as well. In XML, each pattern
- line is represented as by a \fB<line>\fP element.
- .UNINDENT
- .SS Listen Addresses
- .sp
- The following address types are accepted in sync protocol listen addresses.
- If you want Syncthing to listen on multiple addresses, you can either: add
- multiple \fB<listenAddress>\fP tags in the configuration file or enter several
- addresses separated by commas in the GUI.
- .INDENT 0.0
- .TP
- .B Default listen addresses (\fBdefault\fP)
- This is equivalent to \fBtcp://0.0.0.0:22000\fP, \fBquic://0.0.0.0:22000\fP
- and \fBdynamic+https://relays.syncthing.net/endpoint\fP\&.
- .TP
- .B TCP wildcard and port (\fBtcp://0.0.0.0:22000\fP, \fBtcp://:22000\fP)
- These are equivalent and will result in Syncthing listening on all
- interfaces, IPv4 and IPv6, on the specified port.
- .TP
- .B TCP IPv4 wildcard and port (\fBtcp4://0.0.0.0:22000\fP, \fBtcp4://:22000\fP)
- These are equivalent and will result in Syncthing listening on all
- interfaces via IPv4 only.
- .TP
- .B TCP IPv4 address and port (\fBtcp4://192.0.2.1:22000\fP)
- This results in Syncthing listening on the specified address and port, IPv4
- only.
- .TP
- .B TCP IPv6 wildcard and port (\fBtcp6://[::]:22000\fP, \fBtcp6://:22000\fP)
- These are equivalent and will result in Syncthing listening on all
- interfaces via IPv6 only.
- .TP
- .B TCP IPv6 address and port (\fBtcp6://[2001:db8::42]:22000\fP)
- This results in Syncthing listening on the specified address and port, IPv6
- only.
- .TP
- .B QUIC address and port (e.g. \fBquic://0.0.0.0:22000\fP)
- Syntax is the same as for TCP, also \fBquic4\fP and \fBquic6\fP can be used.
- .TP
- .B Static relay address (\fBrelay://192.0.2.42:22067?id=abcd123...\fP)
- Syncthing will connect to and listen for incoming connections via the
- specified relay address.
- .INDENT 7.0
- .INDENT 3.5
- .SS Todo
- .sp
- Document available URL parameters.
- .UNINDENT
- .UNINDENT
- .TP
- .B Dynamic relay pool (\fBdynamic+https://192.0.2.42/relays\fP)
- Syncthing will fetch the specified HTTPS URL, parse it for a JSON payload
- describing relays, select a relay from the available ones and listen via
- that as if specified as a static relay above.
- .INDENT 7.0
- .INDENT 3.5
- .SS Todo
- .sp
- Document available URL parameters.
- .UNINDENT
- .UNINDENT
- .UNINDENT
- .SH SYNCING CONFIGURATION FILES
- .sp
- Syncing configuration files between devices (such that multiple devices are
- using the same configuration files) can cause issues. This is easy to do
- accidentally if you sync your home folder between devices. A common symptom
- of syncing configuration files is two devices ending up with the same Device ID.
- .sp
- If you want to use Syncthing to backup your configuration files, it is recommended
- that the files you are backing up are in a folder\-sendonly to prevent other
- devices from overwriting the per device configuration. The folder on the remote
- device(s) should not be used as configuration for the remote devices.
- .sp
- If you’d like to sync your home folder in non\-send only mode, you may add the
- folder that stores the configuration files to the ignore list\&.
- If you’d also like to backup your configuration files, add another folder in
- send only mode for just the configuration folder.
- .SH AUTHOR
- The Syncthing Authors
- .SH COPYRIGHT
- 2014-2019, The Syncthing Authors
- .\" Generated by docutils manpage writer.
- .
|