SLAC Central Linux: Getting Started

SLAC Central Linux (SCL) is a resource made available for use by GLAST's offline users and collaborators. The objectives of maintaining this resource are to:

  • Introduce new users to the environment.
  • Provide a convenient place to develop and test new software.
  • Enhance collaborative development in a shared environment.

With these objectives in mind, this installation provides access to all tools, external libraries,
and released code.

Notice: The GLAST code has not been released to the public and is for use by members of the LAT Collaboration only!

Prerequisites:

  • Refer to Prerequisites: Basic and be sure that you have met all of the prerequisites that pertain to your site before proceeding.

Logging In:

Reminder: You must change your Unix password every six months.

Notes:

  • If you have a Linux/Unix machine, your login command will look something like:

    ssh rhel5-32.slac.stanford.edu

  • If you have a Windows machine:
    1. From a terminal emulation window, start up your terminal emulation X-Server
      and select SSH.
    1. Connect to a SLAC Unix machine (e.g., yakut.slac.stanford.edu).

    Tip: If you experience unexpected problems, try going to a RHEL5 machine (i.e., ssh yakut, or ssh rhel5-32); this should take you to SLAC's Linux Batch Farm. (Use the pool name, i.e., noric or yakut, to request the least-loaded machine in the pool.)

Changing Your Unix Password

To change your password, see: Changing Your Unix Password.

Knowledge Prerequisites:


Important!

Using nfs user space requires that you have a SLAC account, with write access to the nfs user space.

If you have a SLAC account and cannot write to your nfs user space, there is a permissions problem; contact your NFS Permissions Czar.

Make sure that you also have access to CVS.

 

Using the NFS User Space

Before using SLAC Central Linux for the first time, refer to Modify Your SLAC Central Linux Environment.

  • Making a User Directory. To make a user directory in which to store output and
    local versions of any packages you are using, enter:

    cd /afs/slac/g/glast/users/
    mkdir [user_name]

Then, to work from that directory, enter: cd [user_name]

  • Web Tools (for checking the status of the SLAC Public Facilities):

To check Current Disk space availability, click on:

http://www.slac.stanford.edu/exp/glast/ground/software/CheckDiskSpace.html

  • Build Tools:
SCons

SCons is the Open Source software construction tool chosen to replace CMT.

See SCons pages.

GoGui

A graphical user interface (GUI) for working with SCons builds.

Note: SLAC already has GoGui installed, set up, and available to you on SLAC Central Linux.

See GoGui: Initial Setup — SLAC Central Linux.

Using a GLAST Software Build:

Using the Build Area. The build area (BUILDS=/nfs/farm/g/glast/u35/) helps users avoid having to check out all of the packages and build them on their own.  Users can utilize a build
"as-is", or provide local copies of particular packages and build against a known set of binaries.

Checkout Packages. Builds are created for the following checkout packages:

  • GlastRelease

For information on checkout packages, see:
Science Analysis Software: Checkout Packages.

  • ScienceTools

Navigating SLAC Public's nfs and afs Space

To familiarize yourself with how key directories within SLAC Public's afs and nfs file systems, first examine the environment you have set up in your SLAC Public home directory. See: Modify SLAC Central Linux Environment.

Tip: A good practice is to put analysis code and scripts in your afs home directories (which are backed up), and put your data in nfs.

Caution! When developing on Linux, if there are multiple paths in the CMTPATH, at run time the wrong version of a library can be picked up. Linux developers are encouraged to use one directory when building and running applications via CMT. If you desire to build against a pre-built release, it is suggested that you:

  • Copy the desired build into your development area.
  • Replace or override release packages as needed with new development versions.
  • Do cmt broadcast cmt config.
  • Then build the new packages.

Procedure

  1. After logging in to SLAC Central Linux, you will be in your home directory; from the command prompt, enter: env|sort

A list of environment variables similar to the following will be displayed:

Note the BUILDS path:

BUILDS=/nfs/farm/g/glast/u09/builds/

  1. From the command prompt, enter: ls $BUILDS

Note that the subdirectories are:

Note: Early CMT builds are on u09, newer CMT builds are on u30, and SCons ReleaseManagerBuild(s) are on u35.

  1. To change the BUILDS path from u09 to u35, the location of the SCons builds, enter:

    setenv BUILDS /nfs/farm/g/glast/u35/

    Enter ls $BUILDS and note that the subdirectories are:

  1. Enter: ls $BUILDS/ReleaseManagerBuild

Note that the ReleaseManagerBuild subdirectories now reflect the different operating systems for which builds are now being made:

  1. Enter: ls $BUILDS/ReleaseManagerBuild/redhat5-i686-32bit-gcc41/

Note that the subdirectories are:

  1. Enter: ls $BUILDS/ReleaseManagerBuild/redhat5-i686-32bit-gcc41/Optimized

Note that the subdirectories are:

Note: CHS stands for "Command, Health, and Safety" and, for the purposes of this discussion, will be ignored. The top-level SAS Software are ScienceTools and GlastRelease. However, at the time this was written (08-25-2010), GlastRelease SCons Builds were not yet available. Hence, in the following examples, we will focus on the content of the ScienceTools releases.

  1. Enter:

ls $BUILDS/ReleaseManagerBuild/redhat5-i686-32bit-gcc41/Optimized/ScienceTools

Note that the subdirectories are:

  1. Examine the contents of: 09-18-01

Note that the subdirectories are:

  1. Other file space that you may want to explore:

$ GROUPSCRIPTS
$ CVSROOT
$ GLAST_EXT
$ BUILDS


Last updated by: Chuck Patterson 03/24/2011