jcache - manage files and directories on the write-through cache area


    jcache projectInfo projectName [-x] --- get project information specified by projectName (such as halld, clas).
jcache duplicated projectName --- get duplicated file(s) belongs to project specified by projectName.
jcache pin file1 file2 ... fileN [-D days] [-x] --- pin specified file(s) for a given number of days (default 7 days).
jcache unpin file1 file2 ... fileN [-x] --- unpin specified file(s).
jcache unpinAll --- unpin all files pinned by the caller.
jcache pinInfo [-u user] [-n number] [-x] --- print latest pin information for a user up to the given number files (default 100).
jcache get file1 file2 ... fileN [-e email] [-x] --- cache specified files from tape library, when finish a email will send if email option is used.
jcache put file1 file2 ... fileN [-d] [-x] --- backup specified file(s) to the tape library and delete them from /cache when [-d] is given.
jcache pendingRequest [-u user] [-x] --- get the unfinished request status submitted by the user.
jcache status requestIndex [-x] --- get request status specified by the requestIndex.
jcache cancel requestIndex [-x] --- cancel a unfinished request specified by the requestIndex.
jcache checksum file --- print crc32 the checksum value of a specified file.
jcache chgrp group dir [-R] --- change specified directory's group include Jamsine and /cache file system.
jcache chmod perms dir [-R] --- change specified directory's permission include /mss and /cache (perms in form rw-rw-r--).
jcache tapeRemove file1 file2 ... fileN --- remove specified files from jlab tape system.


This command is used to manage scicomp write-through cache disk Lustre file system. The jcache get will copy files from the tape library and place them on the Lustre file system mounted on the farm machines. Files are deleted from the cache disks when space is required to fulfill new cache requests. Files that are not pinned will be removed using the "least recently used" algorithm. After a file is cached on disk, users can pin the file using jcache pin. To change the group or permission of a directory, the owner of the directory can use jcache chgrp/chmod command. This command not only changes the directory permission or group on the cache disk but also changes the permission or group settings of the corresponding directory in Jasmine system which can be viewed from the /mss directory.

If a user wishes to perform actions on many files in a single command, one can store all the files in a single 'list-file'. He/she can use jcache get/pin `cat path-to-file-name` to get or pin all files in the 'list-file'.


First parameter is the type of a jcache operation. It can be one of the followings: projectInfo, pin, unpin, pinInfo, get, put, status, pendingRequest, cancelRequest, list, chgrp, chmod, tapeRemove, and checksum. Use 'pin' to pin a file on disk for a given number of days. Use 'tapeRemove' to request a deletion of a file from tape library. Use jcache put  [-d]  file to tell the cacheManager to delete the file immediately from disk after it is backed up to tape library.
The full path of a cache file. The path must start with /cache when using with pin, unpin or put operation-type. It can start with /cache or /mss when using with get operation. Since this is the cache for the tape library, there is one-to-one file name mapping between  /cache and /mss.
The full path to a valid cache directory path.

An integer number returned by a 'jcache get/put' operation request.
A project/hall name, such halla, hallb, hallc, halld, clas, home, etc.


           When this option is used, the output of a command will be in the xml form. Default output is in plain text form.
          If this option is used (only works with put), the files in the put request will be deleted from cache disk after the files are backed up to the tape library.
         The chgrp/chmod operation will be recursively performed if [-R] option is given and is supported.
[-u user]
         Execute the read-only commands (pinInfo and pendingRequest) on the behalf of a user provided by the argument.
[-D day]          
           The number of days a file is pinned when the command is issued. The number of days is ranging from 1 to 60 days. If no -D option is specified, the default value is 7 days.
[-n number]          
           The number of pin information to list for a particular user if -u option is provided.   Default value is 100.
[-e email]          
           The email which server will send to when 'jcache get' is complete. 


  1. Copy a file from the tape library to the cache disk and pinned for 7 days:
          jcache get /cache/halld/dir1/file1 /cache/halld/dir1/file2 /cache/halld/dir1/file3
  2.   Backup multiple files to the tape library and delete them from cache disk:
          jcache put /cache/halld/dir1/file1 /cache/halld/dir1/file2 -d
  3.  Pin multiple cache files for a given number of days:
         jcache pin /cache/halld/dir1/file1 /cache/halld/dir1/file2 -D 20
  4. Get a request status in a xml format
         jcache requestStatus 1234 -x
  5.  Recursively change directory /cache/halld/data_challenge Unix group (this will also change the group of /mss/halld/data_challenge)

                    jcache chgrp /cache/halld/data_challenge -R