Site Tools


workshop0_intro

CS Workshop: Introduction to the CS Environment

Welcome to the CS department computing environment!

This workshop is designed for users that are new to the CS environment. The contents of this page provide general information about the CS environment and links to other wiki pages for further reading.


CS Accounts

A CS account and credentials are unique to the CS environment. The password you have for CS is separate from NetBadge and other UVA systems. While your userid in CS will be the same as your UVA NetBadge ID, the passwords are separate.

Your CS account is what gives you access to CS department resources, such as SSH logins, job scheduling, storage, printing, and more.

If you forget your CS password, please use our online tool to reset your password (https://www.cs.virginia.edu/PasswordReset)



IT Help/Support

If you have questions regarding software, logging in, storage, etc., or encounter an issue, please submit a helpdesk ticket request to the CS IT team by emailing: cshelpdesk@virginia.edu

This is our IT team's primary channel for communication.



General CS Help/Support

For inquires related to general items such as reserving a room in Rice Hall, SIS, or others, please email the CS front office at: cs-office@virginia.edu



Environment Overview

Having a CS account grants access to various resources. Below you'll find a list (links included) of resources that are immediately available by having a CS account.

0: SSH Login Cluster (portal)

The SSH login cluster is the point of entry to most resources within the CS environment.

To log in via SSH, simply open a terminal, and run the following command, replacing <user id> with your CS account userid (which is the same as your NetBadge / Computing ID)

~$ ssh <userid>@portal.cs.virginia.edu

Note, for the first time you connect via SSH, you will see the following output

Are you sure you want to continue connecting (yes/no)?

Enter yes to continue

Note, it's recommended to add a heartbeat packet to keep the SSH connection open until you exit

~$ ssh -o ServerAliveInterval=300 <userid>@portal.cs.virginia.edu

After entering this command, you will be prompted for your password.

Note, when you log in for the first time, you will have to reset your password and may have to log in again.

To exit out of an SSH connection

~$ exit

0.1: SSH for Linux & MacOS

Application for running this command are Terminal

0.2: SSH for Windows

Applications for running this commands are Command Prompt or PowerShell

For further reading see: (SSH Logins)



1: Remote Desktop Options

Having a CS account grants access to two types of remote desktops for GUI access. The first is Linux Based and the second is Windows.

Note, neither Linux or Windows options are GPU enabled systems.

Note, if you're logging in for the first time, be sure to log in via SSH firstly to set your password.

1.1 Linux Remote Desktops

NoMachine is the software used for providing Linux based desktops. For instructions, visit the (NoMachine wiki page)

1.2 Windows Remote Desktops

A windows server is used for providing a simple Windows Desktop GUI. For instructions, visit the (Windows Server wiki page)



2: Personal Webpage

Having a CS account gives you a personal webpage that you can customize and use.

To do this

  • Add and edit webpage files under your home directory ~/public_html/ and the URL https://www.cs.virginia.edu/~<userid> will show the contents that you make


3: Supported OS(es)

The primary OS used in the CS environment is Ubuntu 22.04 LTS. This is used on research, login, and compute clusters. There are a handful of general purpose Windows servers as well for VMs and remote Windows Desktops.

The CS department still provides support for Linux, Windows, and MacOS for desktops and laptops.



4: Storage

Having a CS account grants access to storage options. These options are free of charge to an authorized CS user.

Below you'll find some brief details regarding storage available.

4.1: Home Directories

Each user is given access to 100GBs of home directory storage space, which is stored under /u/<userid id>. If additional space is needed, see information about Project or Scratch (temporary) storage.

Home directories have nightly snapshots taken and are kept for 30 days. If you delete a file or directory by accident, it can be restored provided it was deleted within the last 30 days.

For further information, see our (home directories wiki page)

4.2: Project Directories

Each user can request a project directory under /p for storing larger quantities of data. Project directories typically start at 500GBs, and are incremented by the same amount unless a higher amount is specifically needed.

Project directories have nightly snapshots taken and are kept for 30 days. If you delete a file or directory by accident, it can be restored provided it was deleted within the last 30 days.

For further information, see our (project directories wiki page)

4.3: Scratch Storage (temporary / volatile)

Temporary storage is available in two forms.

Note, this is TEMPORARY storage and is NOT BACKED UP.

Do not use this type of storage for any data that you need to keep.

  • Mounted Storage on each system
  • Local Storage on each system
    • /tmp (preferred, depends on system)
    • /localtmp (150GB capacity when present on a system)
    • The amount of local storage varies for each system

4.4: Transferring Data In or Out

There are several protocols available for transferring data.

Samba (SMB), is commonly used along with a GUI to interactively drag/drop files in or out of CS storage.

Secure Copy Protocol (SCP), can be used in a terminal or command line to use SSH to log in and copy a file to or from CS servers.

Secure File Transfer Protocol (SFTP), can be used in a terminal or command line to interactively transfer data, and is often an underlying protocol for GUI based software.

Globus, is a web console based software that can be used to transfer data to / from a personal workstation or laptop. That is, a software is installed locally on your computer, then within a browser you can access the console Globus console which connects to your personal device to transfer data to/from CS.

  • For Home directories
    • Samba (SMB)
    • SCP
    • SFTP
  • For Project directories
    • Samba (SMB)
    • SCP
    • SFTP
    • Globus, preferred for larger transfers, see our (Globus wiki page)


5: Types of Systems

5.1: Managed Systems

These are compute and login clusters. These clusters are managed by the CS IT team and provide a consistent and synchronized environment between each machine and cluster.

5.2: Self-Managed Systems

The CS environment supports self-managed systems. These can be individual servers that are for a specific research project. Such systems allow you to install software yourself and adjust system configurations to fit your unique needs.

Note, any self managed system that is on the wired CS network must be domain joined and must adhere to automatic updates and reboots.

5.3: Laptops and Desktops

If you have a department owned laptop or desktop, it must be configured by CS IT staff. We utilize several pieces of software to remotely manage department owned equipment.



6: Compute Resources

The CS department has a large selection of resources available when you have a CS account.

6.1: General Purpose Nodes (SSH Accessible)

There are development servers (CPU only and GPU enabled) that are accessible via direct SSH login.

For more information about SSH accessible resources, see our (CS Computing Resources wiki page).

6.2: Compute Cluster (Job Scheduling)

The CS department provides a Job Scheduler for requesting individual resources to run a program or train a model.

Currently, SLURM is used for scheduling resources. For more information about available resources in SLURM, see our (SLURM wiki page).

6.3: Software Modules

Software modules are available on all Linux systems, excluding any Self-managed systems that have requested to not have these available.

Loading and using software is as simple as the following after logging in

~$ module load gcc
~$ module load python
~$ python3 
>>> print("Hello, world!")
Hello, world!

For more information about software modules, see our (Software Module wiki page). For more information, see our (Software Module wiki page).

Note, virtual Python environments such as Conda and VENV can be created using the software module system. For more information, see our (Virtual Environment wiki page).

Note, containers are also supported via the software Apptainer. For more information, see our (Apptainer wiki page).

6.4: Virtual Machines

Virtual servers (Linux) can be created upon request, generally for short-term projects.

Please submit a request to our helpdesk system if you need a virtual server.

6.5: Loaner Laptops

For CS undergraduate students ONLY

A loaner laptop program is available for CS undergraduate students actively taking a CS course that require a laptop to complete coursework.

For more information, see our (Loaner Laptop wiki page).



7: Network

The CS department provides a wired network for servers. A wired connection for a workstation is possible, however adherence to stricter security policies beyond what are normally used for Wi-Fi systems.

7.1: Network Topology

The datacenter in Rice Hall has a 10Gb backbone. Each row of servers contains several switches that link to a central aggregation switch, which then links to a core switch. These are fiber channel connections between the switches to provide a 10Gb link between them.

At the core switch, the NFS servers and login servers are connected to provide high throughput.

The rack switches connect to individual servers at a speed of 1Gb.



8: Printing

8.1: Network Printing

Having a CS account grants access to the printers in the building of Rice Hall.

For more information, see our (Printing in Rice Hall wiki page)

8.2: Poster Printing

Poster printing is available for presentations to CS, CpE, and ECE students and faculty.

Having a CS account does not grant access to poster printing. You must have an affiliation to the CS department or sponsorship through an advisor or faculty member of the CS department.



workshop0_intro.txt · Last modified: 2025/10/10 15:39 by 127.0.0.1