Access to the CS computing infrastructure is currently limited to users on the Linux desktop computers in the CS Hardware Lab (Briggs 222) and via SSH through the Linux command line. You will need a working knowledge of Linux commands to get started. If you are new to the Linux operating system, you will probably want to start with the Getting Started with Linux section below.
Accessing the System
These systems can be accessed either using the workstations in the Brigss 222 hardware lab, or accessed via SSH. Students enrolled in COMP 231 have priority access to all desktops in the hardware lab.
For on campus users:
Locate your computers terminal window. (See Using the Terminal for more information)
From your terminal window at the prompt , type the following (not including the $ and replacing the “userid” with your username) to log in!
$ ssh userid@cslogin.arc.rhodes.edu
Your userid should be the username in your Rhodes email. For example, if your Rhodes ID is doej-21@rhodes.edu, in the terminal you would type:
$ ssh doej-21@cslogin.arc.rhodes.edu
You will prompted for your password, which will be your regular Rhodes One Login password.
For off campus users:
Off-campus users are not permitted to directly SSH into the system unless they have setup SSH keys between their own computer and cslogin.arc.rhodes.edu
. To setup password-less SSH keys, follow the steps here: Getting Rid of SSH Passwords (Securely).
You must setup your SSH keys from on-campus. Password logins are disabled from off-campus.
Getting Started with Linux
Using the Terminal
Unless you are using a virtual desktop to access these systems, you will need to use a terminal program on your desktop/laptop. Using a terminal program will depend on which operating system you use and your specific needs. If you are unsure, the simplest solutions are presented first.
MacOS X
Mac OS comes with the Terminal app, which is located in /Applications/Utilities
(or you can search for it). This is fine for basic use.
Users may wish to use a more extensible terminal, such as iTerm2. This is a free download and enables better integration with command-line workflows.
Once you have your terminal installed and up and running, you can SSH to the machine as described above.
Windows
Windows users have several options to access remote machines using SSH.
The simplest solution is to enable this functionality directly in Windows 10.
You can also download the PuTTY application and use it if you prefer a graphical client.
If you would like to add Linux tools to your local system, you can install Windows Subsystem for Linux (WSL) and use the WSL terminal/SSH client to access the cluster.
Linux
Most Linux distributions ship with terminal software and an SSH client. Consult your system documentation for details.
Command Line / Shell
When you SSH into the cluster and are logged in, you will be at a command-line prompt, called the shell. You will need to some some basic text commands to switch directories, create folders, rename files, edit files, run programs, etc.
Rather than try to cover such a large subject in this guide, we provide links to tutorials for using the shell. While you don’t need to complete the entire tutorials, you should at least be familiar with the basics of using the shell.
http://linuxcommand.org/lc3_learning_the_shell.php Recommend sections 1-5.
http://www.ee.surrey.ac.uk/Teaching/Unix/ Recommend sections 1-5.
Editing Files
While you can do a lot of things with the shell, you will likely need to create and edit text files at some point in order to run software on the cluster system. To do this, you will need to use a text editor program to create/edit/save text files. There are two commonly used editors:
Nano
Nano is a simple text editor, designed to be easy to use. The screen typically displays common editor operations on the bottom, which minimizes the need to memory key combinations. You can master nano in just a few minutes with the help of a short tutorial.
VIM
Vim is a powerful text editor that has features like syntax highlighting, spell checking, auto-indentation, and much more. The learning curve for Vim can be steep, but it can be a great time saver in the long run. The simplest way to learn vim is to type vimtutor
at the shell prompt. This will walk you through the basics of the editor, from within the editor. You may also wish to follow a web-based vim tutorial.
Getting Rid of SSH Passwords (Securely)
The Secure Shell (SSH) can be setup with public-key encryption to eliminate the need for typing your password in when you access the cluster system. To configure this you will need to:
generate a public and private key pair on your local computer (
$ ssh-keygen -t rsa -b 4096
)copy your public key to the HPC cluster machine:
$ ssh-copy-id username@cslogin.arc.rhodes.edu
)tell your local machine the key pass phrase (once per boot) (
$ ssh-add
)use SSH and SCP securely without needing to type your password every time
The general process is described here: https://www.redhat.com/sysadmin/passwordless-ssh
Parts of this process depend on your operating system:
Mac OS X: https://rderik.com/blog/understanding-ssh-keys-and-using-keychain-to-manage-passphrase-on-macos/
Windows (Powershell): https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_keymanagement
Windows (PuTTY): https://www.ssh.com/academy/ssh/putty/windows/puttygen
Linux/Windows (WSL): https://www.ssh.com/academy/ssh/agent
Making SSH Easier
Most systems allow you to create a configuration file for SSH that will save you typing. For example, on Linux/Mac/WSL you can create the file ~/.ssh/config
that contains the following:
Host cslogin User user-25 HostName cslogin.arc.rhodes.edu ForwardAgent yes
You need to change the username to your Rhodes username, but then you should be able to connect like this:
$ ssh cslogin
and access the system without being prompted for a password and/or copy files using scp
back and forth:
$ scp cslogin:~/file.txt file.txt
copies from cslogin to local
$ scp file.txt cslogin:~/file.txt
copies from local to cslogin
Page: