Table of Contents

CMSSW Setup

Prepare the Environment

Create cmssoft User

On the head node, create user “cmssoft” which is used to install cmssw. Then update the users to the cluster.

[root@grow-prod ~]# useradd -c “CMSSOFT” -n cmssoft
[root@grow-prod ~]# passwd cmssoft
[root@grow-prod ~]# chage -d 0 cmssoft
[root@grow-prod ~]# ssh-agent $SHELL
[root@grow-prod ~]# ssh-add
[root@grow-prod ~]# rocks sync config
[root@grow-prod ~]# rocks sync users

Make CMSSW Directory

Create the cmssw directory.

[root@grow-grid ~]# mkdir /export/cmssw

Change the directory owner to cmssoft.

[root@grow-grid export]# chown -R cmssoft:users /export/cmssw

Network Mount CMSSW

Edit the auto.share file on the head node to add cmssw/

[root@grow-prod ~]# vi /etc/auto.share
Add the following line to network mount cmssw on all nodes.

/etc/auto.share
cmssw grid-0-0.local:/export/cmssw

Update the mount point to all nodes.

[root@grow-prod dsquires]# cd /var/411
[root@grow-prod 411]# make clean
[root@grow-prod 411]# make

Restart nfs services on the grid node.

[root@grow-grid ~]# /etc/rc.d/init.d/nfs restart
Shutting down NFS mountd: [  OK  ]
Shutting down NFS daemon: [  OK  ]
Shutting down NFS quotas: [  OK  ]
Shutting down NFS services:  [  OK  ]
Starting NFS services:  [  OK  ]
Starting NFS quotas: [  OK  ]
Starting NFS daemon: [  OK  ]
Starting NFS mountd: [  OK  ]

[root@grow-grid ~]# service autofs reload Reloading maps

Configure nfs to start on reboot.

[root@grow-grid ~]# /sbin/chkconfig –add nfs
[root@grow-grid ~]# chkconfig nfs on

Restart Compute Node auto-NFS

[root@grow-prod ~]# ssh-agent $SHELL
[root@grow-prod ~]# ssh-add
[root@grow-prod ~]# rocks run host compute login '/etc/rc.d/init.d/autofs restart'

Install SL5 Libraries

Here is the link to the instructions on how to install the libraries.

Instead we installed the latest version from
http://grid-deployment.web.cern.ch/grid-deployment/download/HEP/repo/sl5/x86_64/RPMS/

[root@grow-grid cmssw]# wget 'http://grid-deployment.web.cern.ch/grid-deployment/download/HEP/repo/sl5/x86_64/RPMS/HEP_OSlibs_SL5-1.0.3-0.x86_64.rpm'

Install the package.

[root@grow-grid cmssw]# yum localinstall HEP_OSlibs_SL5-1.0.3-0.x86_64.rpm

Prepare CMSSW for Installation

Here is the official guide to follow.

[root@grow-grid ~]# chmod 755 /export/cmssw
[root@grow-grid ~]# su cmssw
[cmssoft@grow-grid cmssw]$ export VO_CMS_SW_DIR=“/share/cmssw”
[cmssoft@grow-grid cmssw]$ export LANG=“C”
[cmssoft@grow-grid cmssw]$ wget -O $VO_CMS_SW_DIR/bootstrap.sh http://cmsrep.cern.ch/cmssw/cms/bootstrap.sh
[cmssoft@grow-grid cmssw]$ mkdir /tmp/$USER
[cmssoft@grow-grid cmssw]$ export SCRAM_ARCH=slc5_amd64_gcc434
[cmssoft@grow-grid cmssw]$ sh -x $VO_CMS_SW_DIR/bootstrap.sh setup -path $VO_CMS_SW_DIR -arch $SCRAM_ARCH >& $VO_CMS_SW_DIR/bootstrap_$SCRAM_ARCH.log
[cmssoft@grow-grid cmssw]$ source $VO_CMS_SW_DIR/$SCRAM_ARCH/external/apt/0.5.15lorg3.2-cms3/etc/profile.d/init.sh

This section is a fix

[cmssoft@grow-grid cmssw]$ apt-cache pkgnames | grep fake
external+fakesystem+1.0-cms
external+fakesystem+1.0
external+fakesystem+1.0-cms2

Now install all of these:

[cmssoft@grow-grid cmssw]$ apt-get install external+fakesystem+1.0-cms
[cmssoft@grow-grid cmssw]$ apt-get install external+fakesystem+1.0
[cmssoft@grow-grid cmssw]$ apt-get install external+fakesystem+1.0-cms2

Users Shell

Set the users shells to source cmmsw.

[root@grow-prod profile.d]# vi /etc/profile.d/cmssw.csh

/etc/profile.d/cmssw.csh
# CMSSW
setenv VO_CMS_SW_DIR /share/cmssw
source $VO_CMS_SW_DIR/cmsset_default.csh

[root@grow-prod profile.d]# vi /etc/profile.d/cmssw.sh

/etc/profile.d/cmssw.sh
# CMSSW
export VO_CMS_SW_DIR=/share/cmssw
. $VO_CMS_SW_DIR/cmsset_default.sh

Update the profiles to all nodes in the cluster.

[root@grow-prod profile.d]# cd /var/411/
[root@grow-prod 411]# make clean
[root@grow-prod 411]# make

On the grid node as the cmssw user, add the following line.

[cmssoft@grow-grid ~]$ vi /share/osg/app/etc/grid3-locations.txt

/share/osg/app/etc/grid3-locations.txt
VO-cms-slc5_amd64_gcc434 slc5_amd64_gcc434 /share/cmssw

Create a link

[cmssoft@grow-grid ~]$ cd /share/osg/app/
[cmssoft@grow-grid app]$ ln -s /share/cmssw/ cmssoft/cms

Notes

Contact Info

This Dokuwiki page is maintained by:
Daniel Squires
University of Iowa
Department of Computer Science
Email: daniel-squires@uiowa.edu