      C                          Safety(HSM) - Hierarchical Storage Manager              Overview:     H           HSM is an add-in to the VMS I/O system which provides VMS with
           the G           ability to have transparent file migration between active and I           near line storage in one or more steps. When files are migrated D           ("shelved") from normal disk storage to backing storage, aJ           marking is left on them which is automatically read so that whenG           the file is opened, it is automatically retrieved by HSM from H           nearline storage. Thus, a user or program need not be aware atI           all that such shelving occurred and no operator intervention is ?           needed to perform the "unshelving" operation. This is I           distinguished from operation where a user must first request an D           archived file be reloaded, which requires detailed advanceH           knowledge of such needs. The files appear to have been on diskJ           all the time, but in fact the online disk space is conserved. ItJ           is also distinct from modes of operation where a file's locationJ           visibly changes. These, too, require that programs be told whereC           the new site is, which can be awkward. HSM provides total I           transparency of file migration, invisible to programs and users @           apart from small delays where files must be unshelved.  J           In addition, HSM provides two unique "soft link" abilities which9           complement unshelving, and manages volume space   2           The basic capabilities of HSM are these:  G           * Files can be shelved (by space-making script or by command) I           and unshelved automatically from nearline storage when they are            opened. I            The process opening the files then sees a successful open with I           no side effects. Shelved files can be stored in compressed form I           if this is desired, and can be  stored in any desired location. I           Storage of shelved files on tapes or the like can be done also. E           (In Version 1, users must modify command files to do this.)     I           * Files can be "soft linked" to other files, even across disks. J           This mode of access can be used for a sort of permanent shelvingI           on another volume by truncating the original file       to zero F           blocks. The soft link operates extremely fast and causes theE           file in question to be opened in its new location, with the G           channel restored on close so that again a program observes no I           change, but the file is accessed transparently at its new site. !           Where the new site is a 7           read/write device this can be most effective.   F           * Files can be "soft linked" in a "readonly" mode to anotherE           file. In this mode, suitable for read-only backing storage, ?           whenever a file is opened for read-only access, it is J           transparently and instantly opened on its linked site,  whereverI           that may be on nearline storage. When such a file is opened for G           any kind of writing, however, it is treated as a shelved file I           and is unshelved and replaced on normal disk before the open is B           done. Thus any read/write access will find the file in aC           suitable location for its open to succeed, transparently. H           (Notice that soft linked storage must be on disks and must notB           be in compressed form. The decompression would induce anF           unwanted delay in access.) (It should also be noted that the@           softlinks are from a particular version of a file to a.           particular version of another file.)  G           * Disk space can be managed. Whenever an extend or create (or E           inswap) would not have adequate space on disk, HSM starts a J           "make-space" script which is tailored by a fullscreen utility toI           match site policy. This policy can select files based on access D           time, size, name, or characteristics for space making. The<           default policy is to shelve files over a week old.             Installation    J           The HSM package is installed in a three step process. First, youE           install HSM with VMSINSTAL to build the images and put them F           somewhere. Then you use JT_SETUP.COM to generate the startupH           scripts and select features. Finally, you may optionally electF           to use JTSPACE_TAILOR.COM to set site policy for files to beJ           selected for shelving when space must be reclaimed. This step is           not however required.                1. VMSINSTALI           First, HSM is installed with VMSINSTAL. Put the medium with the ,           HSM kit on it and give the command  1           @SYS$UPDATE:VMSINSTAL Safety013 medium:     1           Only one non-obvious question is asked:   *           Enter directory for HSM programs  J           The response to this is where the HSM programs and command filesI           will be installed. It should be accessible to the whole cluster D           if you have a cluster, and is where the later setup script"           should be told they are.                 2. JT_SETUP   #           Next, you run the command   !           $ @SYS$MANAGER:JT_SETUP   I           to perform your system setup. This allows you to set the system H           parameters up and will generate the command files to start HSMF           up at boot time and to create a few useful symbols at login.  J           The setup script initially comes up with a menu which looks like           this:     1               Safety CONTROL/MAINTENANCE 15:44:05   *               *Select "Shelving" style HSM2               Select "readonly softlink" style HSM,               Explain the HSM styles briefly7            --> Proceed to set up HSM configuration file :               Unshelve all files on a disk if space exists0                Stop a running HSM server cleanly7               Start a server that is already configured                Quit, do nothing  J           This menu is intended to provide a top level setup control whichJ           might be used for installing or deinstalling HSM. Normally in anI           HSM installation you simply take the first selection, since the G           other items are for use once HSM is installed and configured. :           The rest of the menu has the following meanings:  F           Select "Shelving" style HSM" and "Select "readonly softlink"G           style HSM" specify which operation is to be performed to make H           space on the disk when the space-finding script is run. In allG           these cases, files are placed on some nearline storage (which F           means, some local disk including compressed disks managed byH           Squash or magneto optical disks, possibly managed by MOdriver,H           and/or Virtual Branches) and their space reclaimed on the mainG           disk. This reclamation is done by truncating the file to zero I           blocks and marking that HSM will perform an action when someone A           tries to open the file. In the case of "shelving" style G           operation, the operation performed is to delay the open until H           the file is copied back to the normal disk, then let it by. InF           the case of "softlink" operation, the file is copied to someC           other nearline disk and is opened there, invisibly to the I           program, instead of on the original disk. This open takes place I           very quickly and the file is never brought back to the original I           disk, just used in place wherever it has been put. To reset the H           user program's I/O channel to point to the original device, itG           is necessary that HSM do a minimal management of the nearline G           disk also. This is done (as explained below) by selecting the G           nearline disks but telling the configuration script that they C           are only nearline destination disks, not disks from which H           softlinks or swapping can take place. If the disks are managedJ           for full function HSM, this restricted marking is not necessary.E           In the case of "readonly softlink" style HSM, the operation E           depends on the type of open. If the file is opened for read   F           only, the file opens on the nearline storage. If the file isG           opened for read/write access, however, it is unshelved to the I           original disk from whence it came and the marking is removed so I           subsequent accesses find it on the original disk. At this point 4           it is also deleted from the nearline disk.  J           "Unshelve all files..." is used where the desire is to deinstallG           HSM. In this case one must unshelve any files which have been H           shelved (placed in secondary storage) by HSM since once HSM isI           deinstalled, it can no longer automatically retrieve them. This H           script can only succeed if there is room enough on the disk toE           allow such unshelving and will not begin unless this is the J           case. It will however unshelve all files on a given disk so thatI           HSM can be stopped and removed, provided this is possible to do            cleanly.  G           "Stop a running HSM server" will ask which disk to remove the I           HSM server for and will cause that server to exit cleanly. Note I           that if a server controls several disks, HSM is stopped for all             of them, not just one.    G           "Start a server that is already configured" simply starts any H           HSM servers that are started by the HSM startup script. It canI           be used after stopping a server if it is desired to restart it.   D           "Quit, do nothing" simply bails out of the entire JT_SETUP           script.   H           Once the initial menu has been run, and you select the item toF           "Proceed...", you will be presented with the following menu:  !               HSM SETUP  19:19:35   5              -->  Set area to hold HSM database files @                   Set start intercept driver unit number (now 0)4                  *Set area for HSM executable images8                   Done this menu, process disk selectionB                   Remove a disk from an existing HSM configurationH                   Set images which are exempt from HSM (e.g. defraggers)=                   Set area for storing nearline files shelved "                   Quit, do nothing      H           Notice that the "Set area for HSM executable images" is taggedG           with an asterisk (*). This indicates that a logical was found B           giving this value. This will usually be the case after aF           VMSINSTAL run. If definitions exist for other storage areas,J           they are also tagged with "*" to indicate it is not necessary to           enter them again.   J           The area to hold HSM database files, the area for HSM executableG           files, and the area for storing nearline files shelved should I           all be filled in before selecting the "Done this menu..." item.   5           The menu items have the following meanings:   -           Set area to hold HSM database files I           HSM stores data in a database of its own indicating where files J           were stored. Each disk has one (and for volume sets one uses setJ           file/enter to make several synonyms for a file). Whenever a fileJ           is to be shelved or unshelved, this file is consulted, and locksF           on it serve also to synchronize cluster file access at theseD           times. The area specified will hold these files. It can beC           anywhere in the system, though it should be a local disk.     8           Set start intercept driver unit number (now 0)I           You can have as many HSM servers as you like, where each server I           controls unshelving and space monitoring for one or more disks. H           Each disk uses one unit of the intercept driver (JTDRIVER). ToI           set up a second (or later) server, you may start using HS units F           higher than 0, so that if you set up a server once for threeE           disks (thus using JTA0:, JTA1:, and JTA2:), you can set the I           start unit number to 3 here to start with JTA3: next time. Each            run ofH           JT_SETUP.COM generates control files for one server (appendingI           to the startup files if it is not the first time). Normally, it J           is expected that inswap activity will be low enough that one HSME           server will do for an entire system. Thus, this is the only G           provision for multiple servers. You must track how many disks E           have been set up for by hand if you choose to have multiple            servers.  ,           Set area for HSM executable imagesI           This area is expected to contain the images for the HSM server, H           control utilities, and command files used by the system. It isJ           asked for by KITINSTAL and normally would just be left as it was           set.  0           Done this menu, process disk selection9           This item allows you to go on to picking disks.   :           Remove a disk from an existing HSM configurationA           This item allows you to remove disks in an existing HSM @           configuration (or incidentally find out what disks are            configured currently).  @           Set images which are exempt from HSM (e.g. defraggers)=           Some images should not be able to generate inswaps. E           Defragmenters and the like can be in this class. Also it is J           often a good idea to have a copy of the BACKUP image, pointed toI           by its own verb, which will not cause unshelving. Shelved files E           are marked as NOBACKUP type to prevent a system backup from H           unshelving all files on a disk, but this can be changed if oneI           does system backup from an image in the "exempt" list. Up to 32 C           imagepathnames can be specified. (The pathname to use can I           contain wild cards, e.g. "*]BACKUP.EXE;*", or use the full path >           returned by $GETJPI (as seen, for example, in a SHOWG           PROCESS/CONTINUOUS display) as the equally.) When an image is J           exempted, the HSM server simply allows the image's file opens to!           proceed with no change.   5           Set area for storing nearline files shelved E           This menu item sets the area on nearline storage where this J           server will store files. It should be of form device:[directory]F           since the file ID is all that is really available to the HSMF           server. This sets the logical name used for this area by theH           .COM files. Note that you will be warned if the area cannot beH           written to. Also notethat if it is desired to define this areaC           differently, the command files can of course do so, or an E           Assign/job where the servers run would do this. The current 9           setup assumes a single location for the system.   F           When the initial setup menu is exited, one goes on to selectC           disks to be enabled. Remember that for soft links to work G           properly, the disk on which the link is AND the disk on which ?           the file linked TO is must both be controlled by HSM.     J           Disks selected may not, in the initial version of HSM, be systemG           disks. The menu will display all disk class devices found, as F           well, but it should be noted that only local disks should beF           selected for HSM. Use with nonlocal disks might or might notI           work, but is not supported. ("Nonlocal disks" means things like H           NFS clients and the like, not disks on an HSC, which are local           for purposes of HSM.)   ?           The disk menu looks like this (with the selected disk '           highlighted by reverse video:               HSM Configuration0                     (Non system)  Disk SelectionD               Use arrows to move to selection. Use RETURN to select.              End disk selection             _ARISIA$DKA700:            _ARISIA$DKB0:            _ARISIA$DKB300:            _ARISIA$DCA0:            _ARISIA$DCA2:            _ARISIA$DCA3:            _ARISIA$DCA4:            _ARISIA$DCA5:            _ARISIA$VDB0:            _ARISIA$VDB1:            _ARISIA$DKB200:            _ARISIA$DKB700:            _ARISIA$DCA1:            _ARISIA$DCA6:            _ARISIA$DCA7:            _ARISIA$FQA0:            _ARISIA$FQA1:            _ARISIA$FQA2:J                                                          Currently on item           1 of 151D           In this list, which will scroll as you move the arrow keysG           around, mounted disks on the system are shown first, then all H           other disk class devices. When a disk has been selected, it isH           tagged with * on the line to flag visually that you've already#           set up HSM for that disk.     J           If you have selected an HSM style other than "shelving", you areG           also asked after selecting a disk whether this disk is just a I           nearline disk which will be used as a place to store softlinked F           files. If this disk is the target of softlinks, but will notE           have any of its files softlinked anywhere, nor shelved, you G           should reply "Y" to the following question. (Note: Select the :           input disk or disks first when selecting disks.)  A           Is this disk only a nearline disk destination [Y/N][N]:   G           If you answer Y to this question, this disk will be set up so F           that HSM can replace I/O channels for softlinks, but nothing           else.   D           After possibly answering the above question, you return toF           select another disk and eventually to exit. If the "Quit..."I           option is selected, you quit out of the whole disk select menu,            not just this disk.              3. JTSPACE_TAILOR   J           The HSM function of monitoring space depends on a site policy toH           decide what space should be freed. This site policy is decidedI           upon in the HSSPACE_TAILOR.COM script. The MAKSPC.COM procedure J           is furnished with HSM so that additional site constraints can beG           added should they be desired. The space tailoring function is I           used if you have enabled the function to try to make space when H           a disk runs out of room. The space is found via a script whichH           must embody your site policy for what files to shelve and whatH           may not be. It will respect a /NOSHELVE attribute or a /NOMOVEH           attribute on VMS V6 and later, but you must set its limits andJ           in addition if you wish to exempt certain files from moving, you?           must set up the commands which permit such selection.   '           When you run this script with     "           $@GCY$SYS:JTSPACE_TAILOR  @           you will create a space-making script for your system.  ;           The script produces a menu which looks like this:   ,              Site Space Policy Determination  G              --> Set min size file to migrate when space is needed (now            100)B                  Set min age in days for files to be moved (now 7)@                  Set largest "medium sized" file size (now 1000)@                  Specify substrings of file paths to leave alone.                  Clear substring list (now "")G                  Report space occupied by files which would be selected >                  Run the space-making script to free max space;                  Done this menu, build the selection script -                  Quit the menu, doing nothing   G           The script selects files based on age and size, so that files I           whose last access is at least  N  days ago and whose size is at I           least M blocks and which don't contain strings in the full file E           specification that you specify may be shelved. Files marked F           installed, contiguous files, anything with DSK or SYS in the@           filename string, ISAM files, or NOBACKUP files are notI           considered eligible. You may impose other filename strings that A           cannot be there. For example, to omit any file pathname J           containing the string SQUASH, add "SQUASH" to the substring pathF           list. The minimum age and size are set with the first 2 menu=           items. You can of course quit the menu at any time.   G           The space selection will normally select files which have not A           been accessed (as determined by the latest of creation, H           revision, or expiration dates) for  7 days. The files selectedG           are, first, those of sizes 100 to 1000 blocks; next, those of   F           1000 to 250000 blocks; last, those of 10 to 100 blocks. FileD           movement continues until sufficient space is found for theF           current operation (plus a small margin) and then stops. NoteJ           that this controls the  automatic movement of files only. If youJ           use the file shelving/softlinking menu (see below) you can enterA           softlinks or shelve any files you select, based on your            selection.  G           The  "Report..." item will generate a report showing how many J           files in each of the size classes (medium, large, and small) areC           available for making space, and the "Run the space-making I           script..." item will run the space making script, attempting to J           free up to 10% of the disk space. Since some scans of the entireH           index file are needed to gather this data, be prepared for the@           information to take sometimes a few minutes to gather.  E           Whenever a disk under HSM control is nearly full and a file H           create or extend for less than 1/8 of the volume size is seen,D           then the file GCY$SYS:MAKSPC.COM is run. It is operated as           follows     /           $ @GCY$SYS:MAKSPC devicename: nblocks   G           and will attempt to free nblocks blocks on devicename: before F           returning.  It does this by outswapping files that match theJ           site policy you have just chosen. Note that the site policy willI           use the later of the expiration date, the creation date, or the <           revision date of a file. Thus if you have used the)           $ SET VOLUME /RETENTION=(1-,2-) H           command so the system records the last day of file access, theG           selection will skip files which have been read recently, even H           though they might not have been written for some time. This is           recommended.  G           It is also suggested to run the make-space script at night so I           that the outswapping or shelving can be done out of prime time, J           rather than impose a delay on file opens as space is found. ThisJ           should be done via a repeating BATCH process which will resubmitD           itself for the next day when done. If however you have anyF           scheduling packages, such a package can be used instead of aI           batch submit. This is not required for operation, but is likely %           to be a useful thing to do.   J           Now the basic installation should be complete. You may of courseJ           rerun the JT_SETUP at any time to alter decisions encoded there.      #           SHELVING FILES BY COMMAND   I           There are two commands to do manual shelving. One of these lets H           you use a fullscreen front end to select files in your current  G           directory tree. It is the MOVEHSM command. The other lets you D           specify a file specification (possibly a wild card) on any:           device for shelving. It is the MOVEFILE command.  G           There are several modes of file shelving or moving, and these 1           commands allow them all to be selected.   G           The MOVEHSM command presents a fullscreen directory of files, I           with a fairly large set of possible formats. You use arrow keys J           to move around and select the file by the space bar (or deselectI           the same way) or use other selection criteria to pick pieces of            filenames.      5           Such a screen has the following appearance:   H           Edit   eXecute   Copy   Rename   Delete    Move   pUrge   Quit           Help   List   ? =           EVERHART                    USR$ROOT:[EVERHART.HSM]            30 Sep 22:13:           +----------------------------q FILE MANAGER  *.*)           ------------------------------+ B           !  !HS.MMS;2                      7/8   7-SEP-1994 19:45            (RWED,RWED,RE,RE)    !B           !  !HSACLCREA.TXT;2               1/2   7-SEP-1994 19:45            (RWED,RWED,RE,RE)    !B           !  !HSALL.BLD;3                   2/2   7-SEP-1994 18:05            (RWED,RWED,RE,RE)    !B           !  !HSALLDBG.BLD;2                2/2   7-SEP-1994 19:45            (RWED,RWED,RE,RE)    !B           !  !HSAUTH.FOR;2                  3/4   7-SEP-1994 19:45            (RWED,RWED,RE,RE)    !B           !  !HSAUTHM.MAR;2               10/10   7-SEP-1994 19:45            (RWED,RWED,RE,RE)    !B           !  !HSAUTHM.OBJ;1                 3/4   9-SEP-1994 19:05            (RWED,RWED,RE,RE)    !B           !  !HSAUTHMAINT.DOC;8           17/18  14-SEP-1994 17:56            (RWED,RWED,RE,RE)    !B           !  !HSAUTHMAINT.EXE;1           35/36   9-SEP-1994 18:09            (RWED,RWED,RE,RE)    !B           !  !HSAUTHMAINT.FOR;9           56/56   8-SEP-1994 19:39            (RWED,RWED,RE,RE)    !B           !  !HSAUTHMAINT.OBJ;1           35/36   9-SEP-1994 17:08            (RWED,RWED,RE,RE)    !B           !->!HSDMN.CLD;2                   3/4   7-SEP-1994 17:45            (RWED,RWED,RE,RE)    !B           !  !HSDMN.EXE;1                 61/62   9-SEP-1994 18:09            (RWED,RWED,RE,RE)    !B           !  !HSDMN.MAR;3               100/100   7-SEP-1994 19:48            (RWED,RWED,RE,RE)    !B           !  !HSDMN.OBJ;1                 19/20   9-SEP-1994 18:06            (RWED,RWED,RE,RE)    !B           !  !HSDRIVER.DOC;7                4/4   7-SEP-1994 18:08            (RWED,RWED,RE,RE)    !B           !  !HSDRIVER.EXE;1              21/22   9-SEP-1994 18:09            (RWED,RWED,RE,RE)    !B           !  !HSDRIVER.MAR;10           276/276  30-SEP-1994 17:04            (RWED,RWED,RE,RE)    !B           !  !HSDRIVER.OBJ;1              24/24   9-SEP-1994 19:05            (RWED,RWED,RE,RE)    !B           !  !HSDRIVER.OPT;2                1/2   7-SEP-1994 18:46            (RWED,RWED,RE,RE)    !B           !  !HSDRIVER_S2.MAR;19        288/288  30-SEP-1994 17:05            (RWED,RWED,RE,RE)    !B           !  !HSENTER_PASSWORDS.COM;2       3/4   7-SEP-1994 18:46            (RWED,RWED,RE,RE)    !B           !  !HSEXEDEL.CLD;2                1/2   7-SEP-1994 17:46            (RWED,RWED,RE,RE)    !B           !  !HSEXEMPT.CLD;3                2/2   7-SEP-1994 18:02            (RWED,RWED,RE,RE)    !B           !  !HSEXEMPT.EXE;1              30/30   9-SEP-1994 18:09            (RWED,RWED,RE,RE)    !B           !  !HSEXEMPT.MAR;2              40/40   7-SEP-1994 17:46            (RWED,RWED,RE,RE)    !B           !  !HSEXEMPT.OBJ;1                5/6   9-SEP-1994 18:06            (RWED,RWED,RE,RE)    !B           !  !HSFILDEL.COM;2                3/4   7-SEP-1994 19:46            (RWED,RWED,RE,RE)    !B           !  !HSFILEMARK.COM;2            14/14   7-SEP-1994 20:46            (RWED,RWED,RE,RE)    !B           !  !HSFILRST.COM;2                5/6   7-SEP-1994 19:46            (RWED,RWED,RE,RE)    !B           !  !HSFILSAV.COM;3                4/4  29-SEP-1994 18:27            (RWED,RWED,RE,RE)    !B           !  !HSFILUNDEL.COM;2              2/2   7-SEP-1994 17:46            (RWED,RWED,RE,RE)    !B           !  !HSGETLPORT.MAR;2              3/4   7-SEP-1994 18:46            (RWED,RWED,RE,RE)    !P           +---------------------------------------------------------------------D           ! current file no 12    total files 71    files selected 4           display format 2 !P           +---------------------------------------------------------------------  J           When you type the character G (or g) you are given the following           prompt:     1           operate on the 4 selected files Y/N [N]   @           If you reply Y, then you enter the file shelving menu.  F           If you enter via the MOVEFILE command you will be asked whatE           file(s) to move. Then in either case you enter the shelving            menu.     0          The file shelving menu looks like this:  :                Hierarchical Storage Facility - File Moving<                      File USR$ROOT:[EVERHART.HSM]HSDMN.CLD;25              -->  Set normal softlink to another file E                   Set R/O softlink to another file, moving this there =                   Mark and move this file now to backing area 4                   Quit, make no changes to this file7                   Perform database maintenance commands 6                   Move and mark all selected files now  G          This selects what you can do to the file. The three modalities C          of use are represented. In addition you can do maintenance B          commands including resetting the file of kernel markings.            NOTE   WELL:     I          In this menu, the marking commands work at once, so     once you H          select any of the first three items, it is too late to quit and          leave the file alone.  @          The three types of marking in the menu work as follows:  C          Recall, there are three types of linking that can be used.   E          1. You can create a normal "softlink". A softlink means that I          when your file has one, it also has a pointer to another file on F          possibly some other device. Whenever someone attempts to openI          your file, the other file is opened instead on the other device, A          invisibly,and with no need for the HSM server even to be I          involved. As long as the device the file that really gets opened D          is on has HSM control, the I/O channel used is reset to theE          original device when the file is closed. Such a structure is I          useful, for example, where a file is moved to a disk jukebox and I          it is desired to have it remain there indefinitely, but where it D          is desired to have the file appear to be on some other diskG          because users or applications have come to expect it there. In I          conjunction with packages like Acorn's "Virtual  Branches" which E          make all disks in a jukebox appear online all the time, this I          provides a level of transparent migration unavailable otherwise. F          The same is true for files being moved to compressing storage;          such as Acorn's "Squash" compressing virtual disk.     G          For this menu item, you will be asked for the file to link to. I          If it exists already, it is used intact. Otherwise, the original C          file is backed up to the desired destination file. Then in A          either case, if the file is exactly the same size as the G          original file in bytes, the original file is truncated to zero /          blocks and asoftlink mark is inserted.     G           The effect if the file didn't previously exist is to move the H           file to a new location so it is used there for all activities,H           and to free the space on the original disk. If a link is beingI           set up to a different file somewhere, the effect is just to set J           that up, leaving the original file alone unless it appears to be(           a copy of the one linked from.  I           Note that softlinks MUST reside on local disks (or devices like G           jukebox magneto optical disks that act like local disks, with J           software like Virtual Branches which makes them appear online atJ           all times or like Squash which will allow compressed storage but'           will act like a normal disk).   E           2. You can set up a "R/O Softlink". This is a cross between E           normal shelving and softlinks. You are asked where the file E           should be stored, and the file is moved there. However, the I           marking set on it causes it to act like a soft link if the file H           is opened for read only, and like an unshelving if the file isI           opened for write of any kind. That is, if you open the file for J           read, it is opened on the device where it is saved, directly andD           without any intervention by the HSM server. If the file isF           opened for read/write, however, it is treated as having beenG           shelved and is brought back to normal storage. This makes the @           "R/O Softlink" ideal for use where files are stored onD           write-once media or where the linked copy is desired to beC           archival and untouched. Once the file is unshelved, it is D           accessed thereafter on normal disk. It should of course beE           realized that when a file is unshelved in the case of a R/O J           Softlink, anyone who has the original version open for read onlyJ           still is accessing the original version of the file and will notG           see anything done to an unshelved copy. Most situations won't J           have this issue, but it should be understood so that it will notJ           cause trouble. In either form of softlink, the advantage is thatH           file access is extremely fast where the file need not actually           be moved.     I           3. You can mark the file and move it to a backing storage area. H           This is normal file shelving. This is done by backing the file@           up to a save area and marking it as shelved, so that aJ           subsequent open will be able to unshelve it. Note that with thisI           choice, if the logical name GCY$ZIPHSC is defined as "YES", the H           storage is in ZIP compressed form. This will save considerableB           space, but at the expense of significant CPU time duringC           shelving and unshelving. On slower VAXen this time may be H           prohibitive. On AXP machines it may however be acceptable. TheG           logical must be set for the unshelving to work properly also.   I           Note: The shelving and unshelving are actually       done under I           control of the      FILSAV.COM and    FILRST.COM command files, H           which can be edited if     you feel comfortable doing your ownJ           support of those components. (We           cannot support custom;           versions of these files, so if you edit them, you 0           must support the versions you create.)    E           The last menu item, "Move and mark all selected files now", F           tells the system to perform the moving of all files you haveF           selected. The other menu selections perform their operationsJ           immediately, save for the "Quit..." operation which lets you notI           touch a file. If you select that, it will move to the next file A           you have selected, if you selected more than one in the J           fullscreen interface or if you selected a wildcard specificationJ           with more than one file matching it. Thus you can mark files oneF           at a time or can mark all at once. Note too that only normalI           shelving makes sense to do all at once, since softlinks need to 3           have their destinations set individually.         E           The "Perform database maintenance commands" menu looks like            this:   1                      Hierarchical Storage Manager .                           MAINTENANCE COMMANDS  $                --> Delete this entryD                    Remove all database entries for now-deleted files5                    Create listing of all files marked &                    Repair deleted ACEs9                    Change or delete a string in all lists &                    Done with this menu  <           This menu allows you to work on markings of files.             Delete this entry G           means that you are removing markings from the file. Note that G           this is NOT the same as unshelving a shelved file. Rather, it G           just removes the marking that would allow it to be unshelved. E           Where you have made a soft link to a file, this removes the J           softlink marking so that if there's another file that was linkedI           to, an open will now get the original file again. (If of course I           the original file was truncated to zero blocks, this may not be            very useful.)     ;           Remove all database entries for now-deleted files G           searches the database for the current device and ensures that J           the files it points to still exist. If they do not, the databaseJ           entries for them are removed. This cleanup is one that should beI           done periodically. Under normal conditions, there will be times F           when files are deleted and you will want to clean up the HSMG           server's database. Note that deleting a shelved file does NOT J           delete the shelved copy, so the shelved copy remains as a backup           of the file.    ,           Create listing of all files markedD           creates a file in JTD$DB with file IDs of all files in theI           database so that it can be used for kernel-marking all files to E           allow unshelving operations to succeed even if markings are I           disturbed. If you are using the option of having HSM ignore all G           files except those marked, this allows you to produce current D           markings as well. The filename will be the same as the HSMJ           database with _LIST appended to it (which encodes device name in           the filename).             Repair deleted ACEs H           ensures that all file markings match those in the HSM databaseH           so that any disturbed markings are restored. Any markings thatG           were damaged are reported on your terminal at this time also.   0           Change or delete a string in all listsJ           allows global replacement of some string in all the database. ItH           is likely this will VERY rarely be useful for anything but canE           be used where something unusual like a device physical name E           change occurs. You are prompted for the original string and            replacement string.                  USAGE CONDITIONS  G           HSM should be installed and used on all cluster nodes where a J           VMScluster is in use, and logical name pointers for JTD$DB whichE           point to the device database files must agree. Any node not H           having HSM installed will not be able to use its benefits, and>           shelved files will just appear as zero length files.    I           It should be noted too that HSM resets the end of file pointers J           on files shelved to the original file size, though the allocatedJ           area is correctly left as zero blocks after shelving. If you runF           the ANALYZE/DISK utility, it will complain about this. It isI           actually a totally harmless condition and will mess nothing up. H           If this length is reset by ANALYZE/DISK/REPAIR, the unshelvingI           process will run exactly as before, and the only effect will be J           that the DIRECTORY command will be unable to show the file size.I           HSM makes no attempt to patch the DIRectory image or other such A           images since these are not all methods for finding file E           information. Rather, we use a harmless method of preserving I           display information to keep file sizes available when a file is E           outswapped. On inswap, the full and exact information is of            course restored.  G           Files shelved to a backup area have names changed so that the H           original file ID is first, and then have the first part of theH           original file name. If the HSM system must be down, this makesG           it fairly straightforward to locate shelved files in nearline H           storage by hand, or to locate such files should they be backedH           up separately and should someone want to access them from such           backups.  J           Finally, note that finding free space can take considerable timeJ           on a large disk, and that unshelving requires a copy of the file?           back to its original location. This, too, can require C           considerable time. If you have files which must be opened B           quickly, ensure that your site policy inhibits them fromG           shelving, and if you want to be sure space won't run out, run J           the MAKSPC script at low load hours so that the time required toJ           shelve inactive files will occur at hours when it is unlikely toI           cause trouble. You are of course free to tailor the commands in G           the MAKSPC script (and you may want to arrange that extremely I           large files are not autoshelved, for example). The FIND utility H           is capable of this sort of thing readily; its help is supplied;           to make this sort of site configuration possible.   I           You have the ability, by default, to inhibit shelving of a file H           (in VMS V6 and later) by setting the file not shelvable, and aH           site can set images up with the ability to disregard shelving,I           or can use the provided JTEXEMPT image to exempt a process from G           HSM activity on a disk. Therefore at both site and individual I           levels, considerable control of the actions of HSM is provided.     C           Also, individuals can (if the site policy allows) run the E           JTAUTHMAINT utility via the MOVEFILE or MOVEHSM commands to J           shelve any files to which they have control in ways they prefer.J           Beyond this, the site policy governs what is shelved, where, andG           how, and it is vital that it be set up to provide the kind of E           storage migration policy that will migrate files as needed.   J           Remember: you choose your site policy and you choose which disksG           it applies to. A little advance planning can be a big help in :           getting a policy that will cause no grief later.    