LCLS Development Environment - Overview

References

Scope
The following is a brief description of how a programmer would begin developing software for the LCLS Control System.

Operating System
The LCLS Controls Software is built and run on Linux machines running Red Hat Enterprise Verson 4.0 (32-bit).

All hosts on the SLAC Public Unix Network are tailored. However, LCLS hosts schedule tailor. For a list of LCLS machines click here.

Filesystems
AFS is used by LCLS for software development, including CVS and application builds. The top-level AFS directory tree is defined in Table 1.1.2 below. The ACLs used to control write access to AFS are also defined in this table.

All user accounts on the this public network are in AFS and the default shell is c-shell, unless otherwise specified. To change your login shell to bash send an email request to unix-admin.

Since the AFS token expires approximately 24-hours after the initial login, NFS is used to write data files, from standalone processes and IOCs.

For the SCCS AMD information, such as filesystem map, click here.

Development Hosts
LCLS Controls Software is stored under CVS control in /afs/slac/g/lcls/cvs. The CVS reference directory is at /afs/slac/g/lcls. The CVS reference directory is used to manually build on lcls-dev2.

Development Directory Tree
The top-level directory hiearchary found in both AFS and NFS on the SLAC Unix Network is defined in Table 1.1 and 1.1.2.

SCCS NFS toaster space is used in production for the March 16, 2007 run only. This space is used to store data files that are written by standalone processes or by EPICS IOCs. For more information on standalone processes click here.

The NFS disk space on /home is used for store data files that are written by standalone processes run on lcls-dev2, or by EPCIS iocs booted for testing.

The column header access found in the tables listed below refer to the control system applications and not users access.

Table 1.1

Development System - NFS Toaster Space

Path

Server: AMD Filesystem

NIS Group

Net Group

Access

/home

lcls-dev2

lcls

lcls-rtems

read-write

/nfs/slac/g/lcls

surrey10

lcls

lcls-rtems

read-write

Table 1.1.2

Development System - AFS

Path

Server

NIS Group

ACL Group

Access

/afs/slac/g/lcls

SLAC Public Unix Network

lcls

g-lcls

read-only

 

 

 

owner-g-lcls

 

Production Directory Tree
The top-level directory hiearchary for production is on an NFS server maintained by the Controls Group. The top-level directory tree is defined in Table 1.2 below.

The column header access found in the tables listed below refer to the control system applications and not users access.

Table 1.2

Production System - NFS

Path

Server: AMD Filesystem

NIS Group

Net Group

Access

/u1/lcls

mccfs0

lcls

lcls-rtems

read-write

/usr/local/lcls

lcls-builder

lcls

 

read-only

Shared Accounts
Shared passwordless accounts are used to

  1. startup, kill and restart standalone processes
  2. release software on the production host opi00gtw03
  3. run matlab
  4. special operations accounts use to run the LCLS control system

Click here for more detailed information.

Backups
AFS is backed up nightly by SCCS. The previous days back can be retrieved by users, although data needed further back than 24-hours must be retrieved by sending an email request to unix-admin. For more information on retriving the previous 24-hours backup click here.

NFS Toaster space is not maintained by SCCS. As production files are written to the /nfs/slac/g/lcls/ directories, the LCLS Controls systems group will be backed up the NFS directories listed in Table 1.1 above, automatically on a periodic basis daily. Instructions describing how to restore this data will be provided the LCLS Controls systems group.

In production, /u1 disk on opi00gtw03 is backed up by Jthe LCLS Controls systems group, on a periodic basis daily. The /usr/local/lcls directories is copied every hour to another disk which is used as a fallback if the system fails.

Directory Tree for Booting EPICS IOC

  • No labels