Transferring data

Introduction#


Globus Online file transfer#


GlobusOnline is a specialized Data Transfer and Data Sharing tool for large transfers over WAN, across different organizations. Check the ESNet website if you are curious about Globus, and why large data transfers over WAN might need specialized networks and software setups.

We do not have a Server Endpoint of Globus on Grex as of the time of writing of the documentation page. However, you can still use Globus to transfer data between the Alliance’s (former Compute Canada) systems as described here .

RSYNC#


rsync is a versatile local and remote copying tool. Because rsync would “synchronize” the source and destination, it allows for resuming interrupted data transfers without excessive data retransmissions. rsync would equally well synchronize single files and entire directory trees.

For uploading and downloading files from HPC machines that allow only SSH access, rsync does support encapsulation of the data stream in an SSH channel.

An example of rsync over SSH is provided below:

rsync  -aAHSv -x --delete -e "ssh -i a-private-key.key -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null " /home/$LOCAL_USER/somedir/  $REMOTE_USER@grex.hpc.umanitoba.ca:/home/$REMOTE_USER/destination/

In the example above,

  • -e is the option governing SSH use and behavior for rsync .
  • SSH tries to use a key pair (replace a-private-key.key with the name and location of your actual private key; for Grex, the corresponding public key can be uploaded to CCDB. If the key is not provided or not found, SSH will default to password authentication.
  • /home/$LOCAL_USER/somedir/ is a path on a local machine. An actual source directory has to be supplied instead.
  • /home/$REMOTE_USER is a home directory on the Grex system, and $REMOTE_USER is the user name on Grex. The local and remote user names may or may not be the same.
  • note that the trailing slash / matters for rsync!

There is a lot of useful documentation pages for rsync ; just one example .

OpenSSH tools: scp, sftp#


The OpenSSH package, available on Linux, MacOS and recent versions of Windows, provides not only the command line SSH client, but two command line file transfer tools: SFTP and SCP. OpenSSH encrypts all the traffic and provides several authentication options. A useful option for SCP and SFTP is to have a key pair, with the public key deposited in CCDB.

SFTP#


On Mac OS and Linux, where OpenSSH client packages are always available, the following command line tools are present: scp, sftp. They work similar to UNIX cp and ftp commands, except that there is a remote target or source.

SFTP opens a session and then drops the user to a command line, which provides commands like ls, lls, get, put, cd, lcd to navigate the local and remote directories, upload and download files etc.

sftp someuser@grex.hpc.umanitoba.ca
sftp> lls
sftp> put  myfile.fchk

Please replace someuser with your username.

SCP#


SCP behaves like cp. To copy a file myfile.fchk to Grex, from the current directory, into his /global/scratch/, a user would run the following command:

scp ./myfile.fchk someuser@grex.hpc.umanitoba.ca:/global/scratch/someuser

The same example but using a key pair, assuming the corresponding public key is deposited in CCDB:

scp -i a-private-key.key ./myfile.fchk someuser@grex.hpc.umanitoba.ca:/global/scratch/someuser

Note that the destination is remote (for it has the form of user@host:/path). More information about OpenSSH file transfer tools exist on The Alliance/ComputeCanada documentation

File transfer clients with GUI#


There are many file transfer clients that provide convenient graphical user interfaces.

Some examples of the popular file transfer clients are

Other GUI clients will work with Grex too, as long as they provide SFTP protocol support.

To use such clients, one would need to tell them that SFTP is needed, and to provide the address, which is grex.hpc.umanitoba.ca and your Grex/Alliance username.

Note that we advise against saving your password in the clients: first, it is less secure, and second, it is easy to store a wrong password. File transfer clients would try to auto-connect automatically, and having a wrong password stored with them will create many failed connection attempts from your client machine, which in turn might temporarily block your IP address from accessing Grex.

Note that for GUI clients, care should be taken for support of MultiFactor Authentication . MFA is enforced on both Grex and The Alliance HPC systems.

File transfers with OOD browser GUI#


NEW: It is now possible to use OpenOnDemand on aurochs Web interface to download and upload data to and from Grex. Use Files dashboard menu to select a filesystem (currently /home/$USER and /global/scratch/$USER are available), and then Upload and Download buttons.

There is a limit of about 10GB to the file transfer sizes with OOD. The OOD interface is, as of now, open for UManitoba IP addresses only (i.e., machines from campus and on UM Ivanti VPN will work).

More information is available on our OOD pages