MATHLAB
The mathlab server is located behind the host name mathlab.utsc.utoronto.ca.
mathlab is the name of the network that serves the Linux machines at the BV and IC buildings at UTSC. If in-class tutorials were still a thing, during this time we would be in one of those buildings and you would be working on the tutorial on-site. Normally, whatever work you have remaining would be finished at another time. You can access your student file system by connecting to the mathlab server through SSH and downloading or uploading the files that you need. It is important to note that all files are synced across all computers in the whole university.
When we say that your submission must work on mathlab, this is essentially what we mean; your submission must be runnable on the environment specified by the Linux machines here at UTSC. So it is always important to double check that your code compiles inside this environment.
At the time I’m writing this document, mathlab is running Ubuntu 20.04.1 LTS Focal Fossa. This means that users on earlier releases such as 16.04 or 18.04 might experience incompatibility issues.
SSH through Command Line
Mac OS
You can SSH into mathlab through Terminal.

Windows 10
You can SSH into mathlab through Command Prompt or PowerShell.

The Steps
Inside the command line, execute the command ssh {utorid}@mathlab.utsc.utoronto.ca.
As an example, my id is xucharle so I would execute ssh xucharle@mathlab.utsc.utoronto.ca.
Afterwords, you will be prompted to enter a (hidden, non-visible) password. This is your university login.
After pressing enter, you should be greeted by some rules and guidelines. You’re in!

Note: If you get any warnings or prompts after establishing the connection, simply click Yes.
SSH through SSH Client
Download a free SSH client such as PuTTY by Simon Tatham. You only need the SSH and Telnet client itself, not the entire utility package.

After launching the executable, we need to specify the connection.
| Key | Value |
|---|---|
| Host Name (or IP address) | {utorid}@mathlab.utsc.utoronto.ca |
| Port | 22 |
| Connection type | SSH |
Like above, replace {utorid} with your actual student id.

Then using the same instructions as above, you will be prompted to enter a (hidden, non-visible) password. This is your university login. After pressing enter, you should be greeted by some rules and guidelines. You’re in!
File Transfer
File transfer can be a pain to execute. We will achieve this by using SFTP - Secure File Transfer Protocol.
Download a FTP client such as FileZilla at the link here.

After installing the software and launching it, we should be greeted by a Local Site vs Remote Site file structure. Connect to the Remote Site, mathlab, using the details listed below.
| Key | Value |
|---|---|
| Host | mathlab.utsc.utoronto.ca |
| Username | {utorid} |
| Password | {password} |
| Port | 22 |
Needless to say, replace the ${} variables above with your own credentials.

Your Remote Site file structure should now be populated with your mathlab profile’s file system. You can now drag and drop files freely from your own Local Site.

Working on MATHLAB
When you transfer a file and notice that it is 0 bytes on the remote site, you have probably reached the storage capacity.
At your profile directory on mathlab, you have probably been allocated a folder for each course you are taking this semester (eg. cscb09w21_space). Please use this space. If I recall correctly, there is a very stringent storage limit of 5GB on your entire user space (eg. ~/). This space will fill up very quickly. However, course folders such as cscb09w21_space located inside /courses/courses/ individually have a 10GB limit.
Note: These numbers may or may not be right. Don’t quote me on this.