Installation

Usage

As a cp alternative

rsync can be used as an advanced cp alternative, especially for copying larger files:

$ rsync -P src dest

The -P option is the same as --partial --progress, which keeps partially transferred files and shows a progress bar during transfer.

You may want to use the -r --recursive option to recurse into directories, or the -R option for using relative path names (recreating entire folder hierarchy on the destination folder).

As a backup utility

The rsync protocol can easily be used for backups, only transferring files that have changed since the last backup. This section describes a very simple scheduled backup script using rsync, typically used for copying to removable media. For a more thorough example, see Full System Backup with rsync.

Automated backup

For the sake of this example, the script is created in the /etc/cron.daily directory, and will be run on a daily basis if a cron daemon is installed and properly configured. Configuring and using cron is outside the scope of this article.

Snapshot backup

The same idea can be used to maintain a tree of snapshots of your files. In other words, a directory with date-ordered copies of the files. The copies are made using hardlinks, which means that only files that did change will occupy space. Generally speaking, this is the idea behind Apple's TimeMachine.