syncr: An rsync wrapper for folder synchronization. Rsync by itself only provides 1-way synchronization. This script automates rsync synchronization in both directions of many files or folders. This script is similar to Unison except that it does not require any additional software to be installed on the remote machine other than rsync. The main drawback with syncr is that it is difficult to delete files. Written By: Tommy Murphy Website: eat.ourbunny.com ------------ Installation ------------ Requirements: Python 2.4 rsync Ensure that syncr.py is executable: chmod +x syncr.py Copy and edit the config file: config.py cp config.py.original config.py Execute syncr: ./syncr ---- Help ---- Usage: syncr.py [options] Options: --version show program's version number and exit -h, --help show this help message and exit -v, --verbose show debug messages -d, --download Only download, do not upload, files. Deletes from host. -u, --upload Only upload, do not download, files. Deletes from dest. -b, --both Download then upload directory contents. Nothing deleted. ------------- Configuration ------------- config.py holds the configuration for syncr, this includes the list of directories to sync and the rsync parameters. synclist is a python list of tuples. The first string of the tuple is the local location and the second string is the remote location. example: synclist = [ ('/home/user/Pictures/', 'server.com:/homes/user/Pictures/'), ('/home/user/Documents/', '/media/drivea/Documents/'), ] args is a string of rsync parameters. See the rsync man page for more info. NOTE: Spaces are not allowed in the args string. default: args = "-vurtPi" ---- Tips ---- I like to launch syncr from the Gnome Pannel. The Tango Project's reload.svg (/usr/share/icons/Tango/scalable/actions/reload.svg) icon makes a handsome app launcher!