wiki:cypress/FileTransfer

File Transfer

Transferring Files

Linux and Mac Command Line

You may transfer files between your workstation and Cypress on the command line using the scp command. This command behaves much like the basic Linux cp command, except you may use a remote address as the source or destination file. The syntax is as follows:

scp source_file destination_file

The following command will copy the file testfile from the /home/remoteuser/ directory on the remote server cypress1.tulane.edu to your workstation's local directory "." (a period represents the current working directory).

user@localhost> scp remoteuser@cypress1.tulane.edu:/home/remoteuser/testfile .

To copy a directory along with all its contents you will need to add the -r recursive flag. The following command will copy the simdata directory and all its contents to your local machine.

user@localhost> scp -r remoteuser@cypress1.tulane.edu:/home/remoteuser/simdata .

Tulane Box Accounts

You may transfer files between your Tulane Box account and Cypress on the command line using the rclone command. On Cypress, you can make the rclone command available for execution via the command module load rclone (see Module command).

In order to use rclone on Cypress, you must first create the config file ~/.config/rclone/rclone.conf on your Cypress account, which you can do most easily by first creating a reusable copy of it on your local machine and then copying the resulting local file to your Cypress account via the following.

Configuring rclone on Cypress

  1. Download, install, and configure rclone on your local machine by following the instructions for Windows, Mac, or Linux as appropriate starting from the rclone installation site.
    1. During the above configuration, you will be prompted for a name for the Box remote system, e.g. BoxRemote.
    2. Make note of your response for the name of the Box remote system for future reference to be used in your invocations of the rclone command.
  2. Once you've configured rclone on your local machine, locate the resulting file rclone.conf on your local machine.
    1. On Mac and Linux, e.g., look for the file ~/.config/rclone/rclone.conf
    2. On Windows 8 (or under) , e.g., look for the file %userprofile%\.config\rclone\rclone.conf
  3. Create as needed the directory ~/.config/rclone on your Cypress account.
  4. Copy the resulting local file rclone.conf to your Cypress directory ~/.config/rclone. See File Transfer.
  5. For security purposes, be sure to confirm that only you have exclusive read/write privileges to the resulting file ~/.config/rclone/rclone.conf on Cypress. See the ls and chmod commands under Linux Commands

Once you have created the config file ~/.config/rclone/rclone.conf on Cypress, you can run rclone via the following.

Running rclone on Cypress

  1. The following command will list the contents of a top-level folder in your Box account with configured Box remote name BoxRemote.
    rclone ls BoxRemote:<top-level-folder>
    
  2. The following command will copy the contents of a top-level folder in your Box account with configured Box remote name BoxRemote to your current Cypress working directory.
    rclone copy BoxRemote:<top-level-folder> .
    
  3. The following command will copy the file test.txt in your current Cypress working directory to a top-level folder in your Box account with configured Box remote name BoxRemote.
    rclone copy test.txt BoxRemote:<top-level-folder>
    
  4. The following command will simply list the available subcommands under rclone.
    rclone --help
    

Graphical Software

There are many graphical file transfer solutions available. The following are the three most popular and are fairly intuitive. Be sure to set each to connect to Cypress using the Secure File Transfer Protocol (SFTP).

Filezillla is available on all platforms. Be careful when downloading and installing as the hosting site, sourceforge, has begun to bundle bloatware with its downloads. FileZilla

Fetch is a full-featured file transfer client for Mac and is free to the academic community Fetch

WinSCP is a free Windows client. WinSCP

Note: The installer may install other software that you may not want to. So be careful with the messages.

Example

Let's try out FileZilla

Storage on Cypress

Every Cypress user has two locations in which to store data: A small, high security, low performance, personal home directory and a large, secure, group shared Lustre directory.

Storage: home directory

Your home directory on Cypress is intended to store customized source code, binaries, scripts, analyzed results, manuscripts, and other small but important files. This directory is limited to 10 GB (10,000 MB), and is backed up. To view your current quota and usage, run the command:

quota -s -f /home

Please do not use your home directory to perform simulations with heavy I/O (file read/write) usage. Instead, please use your group's Lustre project directory.

Storage: Lustre group project directory

Cypress has a 699 TB Lustre filesystem available for use by active jobs, and for sharing large files for active jobs within a research group. The Lustre filesystem has 2 Object Storage Servers (OSSs) which provide file I/O for 24 Object Storage Targets (OSTs). The Lustre filesystem is available to compute nodes via the 40 Gigabit Ethernet network. The default stripe count is set to 1.

Allocations on this filesystem are provided per project/research group. Each group is given a space allocation of 1 TB and an inode allocation of 1 million (i.e. up to 1 million files or directories) on the Lustre filesystem. If you need additional disk space to run your computations, your PI may request a quota adjustment. To request a quota adjustment, please provide details and an estimate of the disk space used/required by your computations. Allocations are based on demonstrated need and available resources.

The Lustre filesystem is not for bulk or archival storage of data. The filesystem is configured for redundancy and hardware fault tolerance, but is not backed up. If you require space for bulk / archival storage, please contact us, and we will take a look at the available options.

Your group's Lustre project directory will be at:

/lustre/project/<your-group-name>

"your-group-name" is your Linux group name, as returned by the command "id -gn". Your group is free to organize your project directory as desired, but it is recommended to create separate subfolders for different sets of data, or for different groups of simulations.

To view your group's current usage and quota, run the command:

lfs quota -h -g `id -gn` /lustre

To view your own usage, you can run:

lfs quota -h -u `id -un` /lustre

High Performance Data transfer

For high speed transfer of large files (1GB or larger), Cypress is currently equipped with the data transfer tool bbcp. An excellent treatment on the use of BBCP can be found at http://pcbunn.cithep.caltech.edu/bbcp/using_bbcp.htm

Next Section

Working on a Unix System

Last modified 6 weeks ago Last modified on Sep 30, 2019 4:34:27 PM