Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Anna Battenhouse, Associate Research Scientist, abattenhouse@utexas.edu
    • BA English literature, 1978, Carleton College
    • Commercial software development 1982 – 2007
      • Texas Instruments, Motorola ...
      • lots of software development experience but limited Unix/Linux
    • Joined Vishwanath Iyer Lab 2007 (functional genomics)
      • “retirement career”
      • began to appreciate Linux & bash (slowly)
    • BS Biochemistry, 2013, UT
    • Current affiliations:
      • Manager, Biomedical Research Computing Facility (BRCF)
      • member, Bioinformatics Consulting Group (BCG)
      • member, Marcotte lab (systems biology/proteomics)

The Biomedical Research Computing Facility (BRCF) is a and the Bioinformatics Consulting Group (BCG) are CBRS core facility facilities that supports support local research computing.

...

Unix has been around a long time (~1969), before computers had screens or hard drives – magnetic tape and paper tape were used instead. It is written in the C programming language, which was considered a high-level language at the time (– at least compared to assembly language); now . These days C is considered a low-level language (smile).

The original, fundamental "Zen" of Unix is that everything is a file – devices, printers, terminals, and of course actual files.

The GNU project ("Gnu 's is Not Unix") started by Richard Stallman in 1983, provided a lot of open-source tools and utilities to Unix. Popularity of Unix increased dramatically with this development. At this point in time, some Unix flavors were proprietary; others were open or partially open.

Linux, a "Unix-like" system, was developed in 1991 by Linus Torvalds using GNU utilities. Linux is entirely open-source so has become the "Unix of choice" for scientific computing. There are, however, commercial distributions of Linux (e.g. RedHat), but they have restrictions on what open-source tools can be included/used.

There are many flavors/distributions of Unix, and many flavors/distros distributions of Linux. Severak clusters at TACC (the Texas Advanced Computing Center) uses use CentOS, an open-source version of RedHat. Our servers run Ubuntu, from the Debian family of distributionsdistros. Distributions may differ in a number of system management processes, but generally offer a similar set of utilities.

...

Why not use a program with a GUI (Graphical User Interface) instead?

  • Programming involves writing files anyway, and is constrained by the language environment used
  • Using the command line lets you be very precise and flexible at the same time
    • After the initial learning curve (which is non-trivial!!) the command line can be easier and faster!
    • And you can easily test your command line "mini-scripts" as you develop them
  • You can easily work on remote computers from your laptop, as we'll do in this class

...

Note that you will have access to this Wiki even after the class, and I will email you a link to a video recording of the course.

If you choose to follow hands-on, you'll be using the BRCF "GSAF pod", a set of 3 compute servers attached to a large, shared storage server.

...

We have set up 99 "student" accounts, named student01 , student02 ... student99 . We'll assign one to you. The password for these accounts is written on given in the whiteboardchat.

Warning

These credentials are active for the next few daysweeks, but will be de-activated on Sunday May 6, 2023 in the eveningat the end of November 2024.

With your studentNN account you can ssh into one of the following servers:

  • gsafcomp01.ccbb.utexas.edu – odd number studentNN accounts
  • gsafcomp02.ccbb.utexas.edu – even number studentNN accounts


Info
titleUT VPN

For those associated with UT Austin and are not on the UT campus network, you'll need to have the UT VPN service active in order to connect to these servers via SSH. See How to Connect to the UT VPN

Folks not associated with UT Austin, or do not have the UT VPN service installed, can use an alternate web-based method, described below.

Logging in via SSH

You can access the servers using ssh in a Terminal program that runs on your computer. On Macs, this program is called Terminal. On Windows (Windows 10 or later) it is called Command Prompt or PowerShell. Find and open this program now on your computer.

...

  • Answer yes to the SSH security question prompt
    • this will only be asked the 1st time you login
  • Enter the class password at the password prompt, then press Enter.
    • for security reasons, the text that you enter will not be displayed

Once you've successfully logged in, you can logout by just typing exit then Enter. You'll then be back in your local computer's Terminal environment.

If your Windows version does not support ssh, you can download PuTTY from: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Expand
titleLogging in with PuTTY

If you're using PuTTY as your Terminal from Windows:

  • Double-click the Putty icon
  • In the PuTTY Configuration window
    • make sure the Connection type is SSH
    • enter gsafcomp01.ccbb.utexas.edu for Host Name (or gsafcomp02.ccbb.utexas.edu)
      • Optional: to save this configuration for further use:
        • Enter gsafcomp into the Saved Sessions text box, then click Save
        • Next time select gsafcomp from the Saved Sessions list and click Load.
    • click Open button
    • answer Yes to the SSH security question
  • In the PuTTY Terminal
    • enter your student account name after the "login as:" prompt, then Enter
    • enter the password associated with our student accounts
      • for security reasons, the text that you enter will not be displayed


Tip

If your Terminal has a dark background, the default shell colors can be hard to read. Execute this line to display directory names in yellow.

Code Block
languagebash
export LS_COLORS=$LS_COLORS:'di=1;33:fi=01:ln=01;36'

We'll see later how to set this environment variable in your login script (~/.profile) so that it gets executed every time you login to this server.

For now, just copy the appropriate line above, paste it into your Terminal window (after logging on), then press Enter.

Logging in via RStudio web

If you're attending remotely and or do not have access to the UT VPN, you can use the Terminal functionality in the RStudio web application.

...

titleUsing the RStudio Terminal

To access the Terminal built into RStudio Server.

You should now see a command line in the RStudio type-in area.

Tip

If your Terminal has a dark background, the default shell colors can be hard to read. Execute this line to display directory names in yellow.

Code Block
languagebash
export LS_COLORS=$LS_COLORS:'di=1;33:fi=01:ln=01;36'

In the RStudio Terminal

, yellow is

if the default color for directories

, which can be

is difficult to see against its white background

. Execute

, execute this line to display directory names in blue.

Code Block
languagebash
export LS_COLORS=$LS_COLORS:'di=1;34:fi=01:ln=01;36:'

We'll see later how to set this environment variable in your login script (~/.profile) so that it gets executed every time you login to this server.

For now, just copy the appropriate line above, paste it into your Terminal window (after logging on), then press Enter.

...