ssync(1)

NAME
ssync - minimalistic filesystem sync tool

SYNOPSIS
ssync [options]

ssyncd [options]

DESCRIPTION
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.

OPTIONS
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), /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: /etc/ssyncd.work

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

FILES

$PWD/.ssync
    default configuration file for ssync

/etc/ssyncd.conf
    default configuration file for ssyncd

/etc/ssyncd.work
    default work file for ssyncd

/var/log/ssyncd.log
    default log file for ssyncd

/var/run/ssyncd.pid
    default pid file for ssyncd

BUGS
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.

AUTHOR
This manual page was written by Michael W. Shaffer <mwshaffer@yahoo.com>,