Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  SSYNC (1)


ssync - minimalistic filesystem sync tool




ssync [options]

ssyncd [options]


Ssync is a minimalistic filesystem synchronization utility. Its primary goals are reliability, correctness, and speed in syncing extremely large filesystems over fast, local network connections. Ssync does not implement encryption, compression, differencing algorithms, or remote synchronization over a pipe such as rsh / ssh since those features are already well covered by other utilities such as rsync.

Ssync works well on large filesystems and can handle filesystem objects with unusual and non-ASCII characters in their names while correctly preserving all symbolic and hard links and all mode bits. It can be run at increased or decreased niceness and can provide several levels of logging output. Several options allow complete control of synchronization behaviors such as selectively disabling updating of data, ownership, and modes, as well as updating only newer objects or just performing ’test runs’.

The basic behavior of both interactive and daemon versions of the program is to read a list of source and destination paths from a specified work file and take whatever actions are necessary to make the destinations identical to the sources. Each line of the work file takes the form:

<source path> | <destination path>

Any text following a # character to end of line in the work file is considered a comment and ignored.


All options may be set on the command line in either short or long form as well as in a configuration file. For the interactive version (ssync), the default configuration file is .ssyncrc in the current directory. For the daemon (ssyncd), /usr/local/etc/ssyncd.conf is the default. Settings in the configuration file have the same name as the long option and take a form such as:

work-file: /usr/local/etc/

Any text following a # character to end of line in the configuration file is considered a comment and ignored. Example configuration and work files, as well as some more extensive development rationale may be found in the file README.HTML. If you installed a binary package, this file as well as some examples should be located in your distribution’s doc directory for this package. If you built from a source tarball, then it should have included the documentation and example files.
-h --help display usage message and version
-c PATH --conf-path=PATH
  read alternative config file from the default
-i NUM --interval=NUM
  number of seconds to sleep between completing one run and starting the next
-w PATH --work-file=PATH
  path for file containing work list (see also src-path and dst-path)
-f PATH --src-path=PATH
  alternative way to specify a single source path
-t PATH --dst-path=PATH
  alternative way to specify a single destination path
-n (-20 - +20) --priority=(-20 - +20)
  scheduling priority or ’niceness’, lower numbers are more rude, see renice(8), for more details
-F --no-detach
  do not daemonize (use with log-mode: stderr)
-D --no-sync-data
  do not sync data (content) of files
-T --no-sync-time
  do not sync atime / mtime
-M --no-sync-meta
  do not sync meta-data (uid / gid / mode)
-U --update-only
  only sync things if source mtime is > destination mtime
-X --test run sync procedure and collect statistics without actually modifying anything
-p PATH --pid-path=PATH
  path for pid file
-m (file|syslog|stderr) --log-mode=(file|syslog|stderr)
  logging mode
-l PATH --log-path=PATH
  path for log file if using file based logging
-s STRING --log-ident=STRING
  identification string if using syslog based logging
-v (0 - 5) --log-level=(0 - 5)
  logging verbosity, 2 is default, 3 is errors only, 0 lists all updates and deletions


  default configuration file for ssync
  default configuration file for ssyncd
  default work file for ssyncd
  default log file for ssyncd
  default pid file for ssyncd


Due to the simple-mindedness of the configuration file parser, paths containing whitespaces and unusual characters in the work file will not be parsed properly. This limitation does not apply to anything underneath the specified paths, just the starting points as listed in the work file.


This manual page was written by Michael W. Shaffer <>,
Search for    or go to Top of page |  Section 1 |  Main Index

--> SSYNC (1) March 22, 2002

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.