Connect to a CS Linux Workstation

All CS400 students have user accounts on the Computer Science network file servers. This means that you can login and complete your work on the instructional machines on first floor of the CS building. But, did you know that it also means that you can connect to the CS Linux terminals from the comfort of your own home, a coffee shop, a library, or wedding reception? If the Internet is available, you have a terminal emulator, and know a few magic words, you can complete your work from anywhere.

Connecting remotely to Linux workstations allows you to develop programs using languages and tools that you may not have installed on your own computer. Many Linux development tools are not only free, but open-source. So, you can use them, and even improve them for your own more specialized needs. Other tools may exist for all platforms but then you learn that the Linux version has more options, or runs faster, or requires less band-width, or supports shell scripting and batch operations.

Additionally, the Computer Science department hosts its web servers and student user accounts on Linux. One benefit of completing your work on the CS system is that it is backed up nightly for you. If your computer fails, no problem, your files are safe on the CS network and you can access them from any computer (that is connected to the Internet). If you accidentally delete a file, you can even fetch to get the last backuped version (yesterday's file).

However, how you connect depends upon where you are connecting from and what type of computer you are trying to connect from.

CS Terminal Names

To connect to a computer over the internet, you must know the name or IP address of the computer that you wish to connect to. You must also have a user account on that computer. You may also need to install software that allows you to remote connect.

The names of the CS workstations are posted on each computer and on the door to the lab room where the computer is physically located. The next time you go to work in the lab, find the name of the computer you choose. The name will likely be some base name with a number and it will end with cs.wisc.edu.

CS computer name examples

    royal-01.cs.wisc.edu
    emperor-13.cs.wisc.edu
    snares-07.cs.wisc.edu

If you don't care which Linux workstation, use the name best-linux.cs.wisc.edu and let the CS department choose a workstation for you. Once you know the name of the computer you want to connect to, you open a terminal window or on launch a program that can connect remotely to Linux computers.

Here are some examples

Connect to royal-12.cs.wisc.edu from any CS Linux workstation

  1. Open a terminal window
  2. Type the following to connect:
       ssh cslogin@royal-12.cs.wisc.edu
  3. Now, the commands that you execute will occur in the background of royal-12, but any output produced will appear on your terminal window.
  4. If someone else is logged in to royal-12, they will not see your commands or your results.

Connect to best-linux.cs.wisc.edu from your MAC or Linux computer

  1. Open a terminal window
  2. Type the following to connect to the most available workstation.
       ssh cslogin@best-linux.cs.wisc.edu
  3. The CS department connects you and shows you which computer you have been connected to.
  4. Now, your commands will execute on the other machine, but the results will be displayed on your terminal.

Connect to best-linux.cs.wisc.edu from a Windows computer

The Windows operating system does have a command prompt window that allows you to execute terminal commands. But, this command utility does not come with ssh which is what gives you the ability to connect remotely to Linux computers. You will need to download a program. Many students like PuTTY. I use SecureCRT and SecureFX which are available for no-charge download from DoIT shelf.

After you download and install PuTTY or SecureCRT or some other terminal emulator:

  1. Launch the program.
  2. Read the instructions for connecting remotely to terminals.
  3. Configure a connection.
  4. Connect to best-linux.cs.wisc.edu or other terminal.
  5. Proceed as before as if you were sitting at the remote computer.

After you have connected ...

Great, you have connected remotely to another computer. What can you do? You can do most things that you would do if you were sitting at that computer. You can perform most file system operations like: pwd, ls, cd, cp, mv, rm. You can edit files using text-only editors like: pico, emacs, and vi. You can run commands like: grep and diff. You can set file and directory permissions using chmod and sa.

But, you can not run GUI programs from the command-line prompt of your terminal window. You will need to install, configure, and run an X-server instead of a terminal window to run GUI programs remotely.

Also, you can not open other terminals from within a terminal. But, you can change to other terminals. But why???

Exit

If you connect remotely to a linux terminal, exit the terminal before logging out to ensure that all commands complete. Simply type exit at the command prompt.