rsync for data backup and synchronization

The rsync utility is a handy and powerful tool that can be used to backup and synchronize files/directories between different locations in an effective way. Although there are other file transfer protocols (like scp) that can carry out similar functions, the main advantage of rsync is that it is comparatively faster and consumes less bandwidth. This is especially true if one needs to transfer large amount of files or very large size files.

rsync is also  great way to restart an interrupted or failed data transfer with very little cost, as it can pick up part way through a large file rather than start from scratch. It can also act as a great synchronization tool, if folders need to be kept in sync at different locations. When used with the -a flag which stands for 'archive', it can preserve most features including time stamps, permissions, and symbolic links.

A typical example of using rsync for copying files from a remote to local system is given below

              rsync –progress -avz user@remote.server:/folder  /local/folder

Besides these, there are several other options like -delete, -exclude and -max-size that can be used in conjunction with rsync to make it tailored to user requirement.