Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel2
typeflat
separatorpipe

Overview

In the world of HPC there is HPC new users are often unsure of the best ways to access their data, and frequent need to copy or move files and folderscopy data between locations.
This page covers various methods of performing these basic file operations.

SMB/Samba Using a Graphic User Interface (GUI)

In brief, here’s how to connect to file shares from common GUI’s:

Windows: search for or click on the ‘File Explorer App’ (a manila folder held upright by a light blue rack), then in the address bar for the window, type in \\<servername>.arcc.uwyo.edu\<pathto>\<yourproject> and hit enter.

Mac: from the Finder, click ‘Go’ → ‘Connect to Server’. In the ‘Connect to Server’ window that pops up, enter: smb://<servername>.arcc.uwyo.edu/<pathto>/<yourproject> and click ‘Connect’.Because there are several different options, this page can be thought of as an ARCC central reference for data access and transfer.

If you’re new to HPC, we recommend you begin with Graphical User Interface options as these tend to be more intuitive for new HPC users with minimal command line experience.

Graphical User Interface Options:

Mapping ARCC Storage as a network drive (Available for access to Beartooth and Alcova Data)
Access to ARCC Storage with Globus (Available for access to Beartooth, Alcova, Pathfinder, and Wildiris Data)
Access to you Beartooth Data with Southpass (Available for access to Beartooth Data, WI Ondemand for Wildiris Data)

Command Line Tools

Here are several command line tools to make managing files easier:

scp (

...

Secure Copy)

Secure copy or SCP is a means of securely transferring computer files between a local host and a remote host or between two remote hosts. It is based on the Secure Shell (SSH) protocol. From the command line interface, the local host is always represented by the text before the $ in your command line prompt.

Expand
titleExample detailing Command Line Interface anatomy when performing an scp

Example: user@hostname:location$ This prompt reference the username of the user you’re logged in as, the hostname (the computer you're logged into on the command line prompt) and location, the folder you're currently in. For example if Cowboy Joe were logged into Beartooth and in his home folder, the prompt may like: [cowboyjoe@blog1 ~]$ Since users usually connect to Beartooth over a login node, blog1 references the current node on the Beartooth HPC that Cowboy Joe was assigned to, when he logged into the cluster. This is the specific node on the cluster he's using. ~ is an abbreviation and reference to his /home folder in the cluster which he's currently "in".

...

The [hostname] from the login prompt represents the local host in all following SCP examples.

Copying a file or folder from a remote host to your local host SCP example host using SCP:

Code Block
$ scp username@from_host:/path_to_file/file.txt /local/folder/
Code Block
$ scp -r username@from_host:/path_to_folder/folder/  /local/folder/

Copy Copying a file or folder from local host to a remote host using SCP example:

Code Block
$ scp file.txt username@to_host:/remote/folder/
Code Block
$ scp -r /local/folder/ username@to_host:/remote/folder/

Copy Copying a file from one remote host to another remote host using SCP example:

Code Block
$ scp username@from_host:/remote/folder/file.txt username@to_host:/remote/folder/

Copy all the contents from a local host folder into a remote host folder using SCP:

Code Block
$ scp -r /local/folder/. username@to_host:/remote/folder/

sftp

Secure Shell File Transfer Protocol is a command-line interface client program to securely transfer files using an encrypted Secure Shell connection. SFTP should not be confused with running an FTP client over an SSH connection.

Start the sftp interface: SFTP username@tetonusername@beartooth.uwyo.edu

Examples

  • Gets This gets a txt file from Teton and moves it to the Local System:
    get hello_world.txt destination_directory

  • Puts This puts a txt file from the Local System on to Big Hornonto Teton:
    put source_directory/hello_world.txt destination_directory

rsync

...

rclone

  • rclone is an updated and multithreaded version of the rsync utility, with robust capabilities.

    • functions as both a file synchronization and file transfer program

  • The rsync algorithm is a type of delta encoding and is used to minimize network usage. Zlib may be used for additional compression, and SSH or stunnel can be used for data security

  • Rsync is typically used to synchronize files and directories between two different systems.

    • For example, if the command rsync rclone local-file user@teton user@beartooth.arcc.uwyo.edu:remote-file is run, rsync rclone will use SSH to connect as the user to remote-host

Examples

  • To sync the contents of dir1 to dir2 on the same system:
    rsync rclone -r dir1/ dir2

  • To sync with a remote system:
    rsync rclone -a ~/dir1 username@tetonusername@beartooth.arcc.uwyo.edu:destination_directory

FTP

FTP (File Transfer Protocol) is a network protocol for transmitting files between computers over Transmission Control Protocol/Internet Protocol (TCP/IP) connections. Within the TCP/IP suite, FTP is considered an application layer protocol.

  • Although some systems might have a ftp client installed directly on the system, due to various security concerns, and that the protocol is being deprecated, ARCC does not have a client installed.

    • As a starting point, see the Wiki entry that states “Throughout 2021, the two major web browser vendors removed this ability. Support for the FTP protocol was first disabled in Google Chrome 88 in January 2021,[4] followed by Firefox 88.0 in April 2021.[5] In July 2021, Firefox 90 dropped FTP entirely,[6] and Google followed suit in October 2021, removing FTP entirely in Google Chrome 95”.

Alternatives

Where users require an ftp client we can offer a number of alternatives:

Globus Online

Globus manages file transfers between two computer systems. It is ideal for large files and available for many institutional clusters and networks.
This document covers the basics of using Globus and provides external links to more detailed information.
If you’re a first time user or simply need a refresher, please refer to Globus’ excellent step by step guide.

Using Globus in Brief

  1. Login to Globus' Web app.

    1. Click “Login”.

    2. To use

...

    1. UWyo’s organizational login, search for ‘University of Wyoming’.

      1. Note that this step may be skipped if Globus still has you cached.

  1. Enter or search for an endpoint or collection in the ‘Collection’ field or find recently used endpoints under ENDPOINTS in the left pane.

    1. The Teton/Alcova collection is ‘ARCC Teton’.

  2. Click ‘Transfer or Sync to…’ in the panel on the right side of the page.

  3. Enter/find a second collection.

  4. Browse to the appropriate source and destination folders in both collections.

  5. Select the files/folders you wish to copy and click ‘Start’.

  6. Click ‘Activity’ in the left pane to observe the transfer progress.

Globus file share instructions

See Globus' instructions on sharing data to learn how to create and share an upload/download repository that you can control access to.

Globus Connect Personal

Globus Connect Personal allows you to share and transfer files to and from your laptop or desktop computer. GCP supports the three primary OS’s. The default is for Mac; click the ‘Show me other supported operating systems’ toggle to download for Linux and Windows.

Note that GCP has a “High Assurance” option for Protected Health Information or Controlled Unclassified Information.

Globus Command Line Interface (CLI)

If you need to use a command line interface, please refer to Globus’ excellent step by step guide.