SyncDat Options

The following configuration options can be used to control and customize the behavior of syncdat.  Most options can be specified on either the command line, or in a configuration file.  Command line settings will override configuration file settings.

Options with the "Boolean" type take no parameter on the command line, but require a value of 0 or 1 in the configuration file.

Run Modes

Each of the following options causes syncdat to perform the given synchronization or maintenance task.  Prior to version 1.5, Peer Mode was selected by default.  It now must be explicitly selected with -P or PeerMode.

CLI  Config          Value
-A user[:passwd]@example.com:
  Add a set of authentication credentials to encrypted storage.  You must specify a port number using -p if the server is not on port 8080.
-E user@host:
  Expire and remove a set of authentication credentials from storage.  You must specify a port number using -p if the server is not on port 8080.
-l LocalMaster Boolean
  The remote directory will be changed to make it identical to the local directory.  See the "Local Master" section.
-P PeerMode Boolean
  Changes to both directories made since the last synchronization will be considered.  See the "Peer Mode" section.
-r RemoteMaster Boolean
  The local directory will be changed to make it identical to the remote directory.  See the "Remote Master" section.
-R Register an MTP/IP license code then exit.  You may provide the license code on the command line or enter it when prompted.

General Settings

These options set the general run-time behavior of syncdat.

CLI  Config          Value
-C NoPWCache Boolean
  Do not load or save the password cache.  If a password is required, you must provide it on the command line or in response to a prompt.  Default: False.
-d Debug 0 to 6
  A non-zero value will display syncdat's current configuration settings and enable diagnostic output.  Level 1 is recommended any time you are experiencing difficulties.  See Tech Note 0033 for information about how to submit diagnostic output to DEI support for analysis.  Combine with -s (ShowLogs) for time-stamped output.  Debug levels above 1 will degrade performance and are not recommended unless a DEI engineer specifically requests the output.  Default: 0.
-D NoDelete Boolean
  All delete actions will be ignored.  Files removed from one side of a synchronization will be allowed to remain on the other side.  Default: False.
-f path name
 

Read the given configuration file instead of the default paths.  Specifying an empty path string (–f "") will disable all configuration files.

Windows: the path may include environment variables such as %SystemRoot%.
-H IgnoreHidden Boolean
  Files and directories identified as hidden by the operating system will not be copied.  Such items will only be deleted if doing so is necessary to delete a non-hidden parent directory.  Otherwise, hidden files will be left alone.  This includes names starting with "." on unix systems, items marked as "Invisible" on Windows systems, and items marked as "Hidden" on macOS systems.  Default: False.
-i IncludePattern String
  Glob-like patterns applied to base file and symbolic link names.  See Filters for pattern syntax.  Default: None.
-I String
  Use the given string as the session identifier for Session Reports instead of generating a UUID.  Default: None.
-K Encrypt Boolean
  Require all content to be encrypted.  If the server does not support content encryption, an error will be returned.  Usernames and passwords are always encrypted, regardless of other settings.  Default: False.
-n NoAction Boolean
  Run in safe mode: scan the directories and report what actions would be taken, but do not actually make any changes.  Default: False.
-p Port UDP Port
  Specify the UDP port of servers.  Use this option if a server is running on a port other than the default 8080.  Individual servers in a host group can override this using the syntax "sever+port", for example "example.com+7000".  Default: 8080.
-q Quiet Boolean
  Display minimal output.  Automatically enables -yDefault: False.
-s ShowLogs Boolean
  Show detailed, machine parseable, logs of syncdat's actions.  Default: False.
-S StopTime Minutes
  Limit the total runtime of syncdat to this many minutes.  Any transactions in progress at this time will be aborted.  Default: None.
-t TryInterval fail | skip | 0 | seconds
  Set the behavior of the Automatic Retry option.  Default: 60.
-u NoUserGroup Boolean
  Do not copy POSIX user or group ID numbers.  Use this option if the client and server UID/GID numbers do not match, or if one or both lack permission to set user ids.  Default: False.
-v Verbose Boolean
  Enable Verbose Mode to display details of the individual actions syncdat may perform.  If used without other options, display the syncdat version and option help, then exit.  Default: False.
-W Windows domain
  Specify a Windows authentication domain.  Default: None.
-X ExcludePath String
  Relative local and remote paths matching this pattern will be ignored.  See Exclusions for pattern syntax.  You may have multiple ExcludePath declarations.  Default: None.
-y Yes Boolean
  Disables interactive queries by assuming the default answer to all questions regarding conflicts and confirmations.  Default: False.

Performance

These options set performance parameters and resource utilization.  Server configuration may change the default impose limits on some of these values.  See the Option Negotiation chapter to learn how final values are determined.

CLI  Config          Value
-a Aggression -3 to 5
  Advise MTP/IP as to how aggressive it should be in fully utilizing the network path.  Aggression affects relative performance compared to all other data flows sharing the same network path, similar to prioritization.  It is very rare to need to set aggression higher than 2.  Never set an aggression level of 4 or higher without careful testing.  See the Performance section for details.  Default: 2.
-e Expire seconds
  Sets how long syncdat should wait without hearing from a server before it gives up and aborts a stalled transaction.  Longer values may be useful on highly unreliable networks.  Default: 40.
-k MaxRate kilobytes per second
  Set a limit on how fast each transaction can go in kilobytes per second.  Default: None.
-L MinRTT milliseconds
  Advise MTP/IP of operation on a path with very high latency.  The value should be the minimum observed round trip time of the path, in milliseconds.  This setting will have no effect for RTTs less than 500ms and has little effect for RTTs less than 2000ms.  Default: None.
MaxRTT milliseconds
  Request that the path latency for each transaction be limited to the given amount of time.  Use this option if other applications (such as VoIP or video) require that latency along the path be kept below a specific target.  Transfer speed will be reduced any time latency exceeds this value.  This could severely degrade performance if other network traffic is causing high latency.  Consider Aggression level 0 or lower as an alternative.  Default: None.
-N NoiseRatio 4 to 5000
 

MTP/IP normally regards packet loss as an indication of network congestion.  This option will cause MTP/IP to ignore packet losses up to a rate of one in N, for a given number N.  For example, a value of 100 will cause MTP/IP to ignore a loss rate of up to 1%.  This option should only be used on noisy data paths where loss is occurring due to external factors such as uncorrected bit errors.  Improper use of this option may severely disrupt the network and result in a loss of performance or connectivity, especially when Aggression is elevated.  Default: None.

Site address[/bits] Aggression MaxRate Expire MaxRTT MinRTT Encrypt
  Configure performance for an particular server.  Address must be a DNS name, IP address, or subnet.  For subnets, use an address followed by a slash and the number of mask bits.  The remaining fields are white space separated and correspond to the named configuration variables.  A value of 0 implies that the default should be used.  You may have multiple Site declarations.  Default: None.
-T MaxDatagram bytes
  Limit the size of network datagram payloads to no more than this amount.  The full IP datagram size will be 56 bytes larger when MTP/UDP/IP headers are included.  Tunneling, VPNs, IPsec, MPLS and other encapsulations will add more.  If your network is known to have an MTU less than 1500 bytes or problems with IP fragmentation, try setting a value of 1408, 1280, 1024, or 512Default: None.
-U MinDatagram bytes
  Use network datagram payloads of at least this size.  If your network path is very fast (gigabit or more) and every device along that path supports Jumbo frames (MTU 9000), you may be able to improve performance by setting this to 8192.  Even larger values, up to 61440 may be used on networks configured to support such MTUs (e.g. InfiniBand).  Settings above 1408 without Jumbo frames fully supported may cause severe performance problems or loss of connectivity.  Note that setting MinDatagram will increase the minimum throttling limit discussed in the Performance chapter.