Rsync

From UFRC
Jump to navigation Jump to search

Overview

Rsync, which stands for "remote sync," is a utility for copying and syncing data between two computer systems. UFRC now provides a URL for users to rsync their data to and from the cluster. The basic syntax of the rsync command is:

[user@laptop ~]$ rsync options source destination


Some common options used with rsync commands
Option Meaning
-a archive mode; allows copying files recursively and also preserves symbolic links, files permissions, user & group ownerships and timestamps
-v increase verbosity
-r copies data recursively
-z compress file data
-h output numbers in a human-readable format

Copying files to the cluster

Example: Jane has started a new project called 'build_tree_xyz' on her laptop. She wishes to copy this project to the cluster to run some jobs related to the project. Jane runs rsync from her laptop to sync the project into her home directory.


If Jane's username on her computer is the same as her UFRC username, she can run:

[jane@laptop ~]$ rsync -av build_tree_xyz rsync.rc.ufl.edu:~


If Jane's username on her computer is different than her UFRC username, she needs to run:

[jane@laptop ~]$ rsync -av build_tree_xyz jsmith@rsync.rc.ufl.edu:~

Copying files from the cluster

Example: Jane's job writes some outputs to a directory on scratch '/ufrc/mylab/jsmith/build_tree_xyz_outputs/' and she wants to rsync those outputs to her laptop for further analysis.


Jane should run:

[jane@laptop ~]$ rsync -av jsmith@rsync.rc.ufl.edu:/ufrc/mylab/jsmith/build_tree_xyz_outputs ~


Copying files between directories

Example: Jane, of the "doe" group wants to copy a directory tree from one /ufrc directory to another.

Jane should login to hpg.rc.ufl.edu and then run rsync as follows:

[janedoe@JanesMac]$ ssh jane@hpg.rc.ufl.edu
<Enter password>
[jane@login1 ~]$ rsync -av /ufrc/mygroup/jane/important_data /ufrc/mygroup/share/project/

Note the absence of a slash in the source directory. If a slash is present at the end of the source directory name then the contents of the source directory will be copied and not the directory itself.

References

There are also plenty of existing tutorials available on the web describing the various rsync options.