Continual Sync

Current version: 0.1.0 (20 Aug 2023) [src]

continual-sync is a tool to synchronise one directory tree with another, with rsync, using the inotify mechanism to keep the copy constantly up to date very efficiently by making rsync do as little work as possible.

It can be used to mirror directories between machines asynchronously, for instance backing up your local files to an off-site file server.

The continual-sync tool is intended to be used in the background - set up once and forgotten about. For example, it can be used to back up hundreds of Linux desktops to a central server with no user interaction, and with changes appearing on the central server within minutes of the originals being changed on the desktop.

The package also includes the "watchdir" utility, which writes change notification files when the contents of a directory are altered.

Note that this software will only run on Linux.

This software is distributed under the terms of the GNU General Public License version 3 or later.

To install continual-sync, follow these steps:

tar xzf continual-sync-0.1.0.tar.gz
cd continual-sync-0.1.0
sh ./configure
sudo make install

Comments, bug reports, and patches can be sent using the Issue tracker, or through the Contact Form.


0.1.0 - Sun Aug 20 2023
  • Refactored package structure to better conform to GNU standards.
  • Updated --help and --version output to conform to GNU standards.
  • Switched license to GPLv3+.
  • Removed direct support for Red Hat Enterprise Linux.
  • Added systemd unit and sysvinit script.
  • Moved continual-sync to system binary directory.
  • Create the parent directories of log, status, and PID files automatically.
  • Exit and restart a subprocess if its exclusions file disappears due to temporary directory cleanup.
0.0.6 - Sat Sep 04 2021
  • Added an "ignore vanished files" option.
  • Updated the init script to create /var/run/continual-sync on startup.
0.0.5 - Fri Dec 12 2014
  • Repackaged as a free software project with permission from my employer.
0.0.4 - Tue Aug 12 2014
  • Added "working directory" field to status file.
  • Check working directory still exists after every sync attempt, as well as when a watcher exits.
0.0.3 - Thu Aug 07 2014
  • Added "current action" field to status file.
0.0.2 - Wed Aug 06 2014
  • Added "temporary directory" parameter.
  • Set default $PATH if one is not set in the environment.
  • Record rsync errors in log file.
  • Added "status file" parameter.
0.0.1 - Sat Aug 02 2014
  • Initial package creation.