cvmfs usage - E1039-Collaboration/e1039-wiki GitHub Wiki

How to Use CVMFS Directory on Grid

A set of files accessed by your grid job has to be placed on the CVMFS directory, because all other directories are not visible (mounted) on grid. We should keep the amount of files on CVMFS as little as possible, because the disk space and the I/O speed of CVMFS are quite limited. We should place no source nor build file in it.

Group-Level Directories Used in SpinQuest

The "resource", "share" and "core" packages are available in the group-level directories. User can/should use them unless one needs a modified version.

Directory Location
Working /exp/seaquest/app/software/osg/software/e1039
CVMFS /cvmfs/seaquest.opensciencegrid.org/seaquest/software/e1039

User-Level Directories Used in SpinQuest

Directory Location
Working /exp/seaquest/app/software/osg/users
CVMFS /cvmfs/seaquest.opensciencegrid.org/seaquest/users

Usage

  1. Create your directory under the working directory, using your account name.
  2. Place your files in the working directory.
    For example you can set the installation directory of your core/analysis packages to the working directory and build them.
  3. Synchronize the working directory to the CVMFS directory automatically or manually. See details in the next section.
  4. Configure your grid job so as to access the files in the CVMFS (not working) directory.
    In gridrun.sh, for example,
    • Source your core package in the working directory instead of the default, e.g.
      source /cvmfs/seaquest.opensciencegrid.org/seaquest/users/<usr>/<core dir>/this-core.sh
      
    • Set the environmental variables for your analysis package, e.g.
      export   LD_LIBRARY_PATH=/cvmfs/seaquest.opensciencegrid.org/seaquest/users/<usr>/<analysis dir>/lib:$LD_LIBRARY_PATH
      export ROOT_INCLUDE_PATH=/cvmfs/seaquest.opensciencegrid.org/seaquest/users/<usr>/<analysis dir>/include:$ROOT_INCLUDE_PATH
      

Synchronization

The CVMFS area is auto-synchronized once per day. You can usually wait for it.

When you immediately need the CVMFS area to be synchronized, you could execute the following script on spinquestgpvm01;

/e906/app/software/script/update-cvmfs-area.sh

Before you do that for the 1st time, you have to ask our computing administrator (Andrew) to grant ssh [email protected] to your account.

Trouble Shooting

When an error happens, you should first log in to the server and look into the log file;

ssh [email protected]
less logs/sync-cvmfs-seaquest.log
  • Error Repository seaquest.opensciencegrid.org is already in a transaction.

    It is possible that a transaction process was not finished cleanly. This command could fix it; cvmfs_server abort seaquest.opensciencegrid.org.

  • t.b.a.

⚠️ **GitHub.com Fallback** ⚠️