Reference
Generating reports off-line


This chapter shows you how to use VDM to generate reports off-line after data collection has completed.

Most VDM users run a regular set of reports after data collection. This is the "standard" information they wish to receive each morning.

Sample data analysis procedures
The distribution kit contains the COM files ANALYSIS_1, ANALYSIS_2 and ANALYSIS_3 containing various report requests which can be customized to your needs.

On-going interaction
The data analysis procedure would normally run immediately after the data collection run. Once the procedure is set up, it will normally run without further interaction with you. However, if your system goes down, you may have to resubmit the batch job.

We strongly recommend that you set up a standard set of reports and review your disk usage at least weekly. Disk management is not complex or time-consuming but it does require regular attention.
VDM and the user authorization file (SYSUAF.DAT)


This chapter discusses the SYSUAF.DAT and its relationship with VDM.

The User Authorization File (SYSUAF.DAT) is an OpenVMS system file containing important information on every user who is authorized to gain access to the system.  Each SYSUAF.DAT record contains the username, password, UIC, privileges and additional information.

It is normally maintained by the OpenVMS utility AUTHORIZE.

It can be read in either user name or UIC sequence.

Typically, there is one record in the UAF for each user that can access the system.  There is a record with the user name "DEFAULT" which contains default values used during the creation of new accounts.  There are special accounts such as SYSTEST, SYSTEST_CLIG and FIELD for use by Digital personnel.

VDM uses four fields in the UAF:

• Username
• UIC
• Account
• Owner

SYSUAF.DAT access
VDM needs read_only access to the file.

The section in this manual on using VDM in a cluster outlines how you can use the logical SYSUAF to instruct VDM which user authorization file to use when creating reports. This can be useful if you wish to run reports on a node other than the one that data collection is run on. If you have a cluster common authorization file, VDM will use it automatically.

For more complete information about the User Authorization file refer to the OpenVMS AUTHORIZE manual.
Updating account names

This chapter shows you how to modify account names in the UAF.  Account is part of the UAF record and is updated by the OpenVMS AUTHORIZE utility.  It is a user_assigned code used to group users together independently of UIC or username.  It can be used to generate project or department summaries from the disk usage data.

NOTE: In the following text, we have assumed that the UAF record for the user has already been created.

For more data on the UAF and the functions you can perform on it, refer to the OpenVMS AUTHORIZE manual.

Adding new accounts
To add new accounts to the UAF record, use the following command:

RUN AUTHORIZE
UAF>MODIFY username/ACCOUNT=account_name

where "username" is the username you want to change and "account_name" is the new account for that user.

Removing accounts
To remove accounts from the UAF record, use the following command:

RUN AUTHORIZE
UAF>MODIFY username/ACCOUNT=""

where "username" is the username you want to change and there is no account name.

Listing accounts
To list the accounts in the table, use the following command:

RUN AUTHORIZE
UAF>LIST

This command will list ALL fields in the records in the UAF file to a default file SYSUAF.LIS on the current drive.  Output can be directed to the printer or a file using the /OUTPUT qualifier.

The FULL OpenVMS AUTHORIZE list is comprehensive but not very readable.  For a more readable report, use the following command:

RUN AUTHORIZE
UAF>LIST/BRIEF

Updating owner names

This chapter shows you how to modify owner names in the UAF.  Owner is part of the UAF record and is updated by the OpenVMS AUTHORIZE utility.  It is a user_assigned code used to group users together independently of UIC or username.  It can be used to generate project or department summaries from the disk usage data.

NOTE: In the following text, we have assumed that the UAF record for the user has already been created.

For more data on the UAF and the functions you can perform on it, refer to the OpenVMS AUTHORIZE manual.

Adding new owners
To add a new owner to the UAF record, use the following command:

RUN AUTHORIZE
UAF>MODIFY username/OWNER=owner_name

where "username" is the username you want to change and "owner_name" is the new owner for that user.

Removing owners
To remove the owner from the UAF record, use the following command:

RUN AUTHORIZE
UAF>MODIFY username/OWNER=""

where "username" is the username you want to change and there is no owner name.

Listing owners
To list the owners in the table, use the following command:

RUN AUTHORIZE
UAF>LIST

This command will list all fields in the records in the UAF file to a default file SYSUAF.LIS on the current drive.  Output can be directed to the printer or a file using the /OUTPUT qualifier.

The full OpenVMS AUTHORIZE list is comprehensive but not very readable.  For a more readable report, use the following command:

RUN AUTHORIZE
UAF>LIST/BRIEF
Resetting averages


This chapter shows you how to use VDM to reset allocation averages.

VDM calculates the average number of blocks allocated to each user.  The average is updated each time data collection is done.  If this is done weekly, it is not as representative of the "true" average as daily updates would be but it is normally good enough for disk management purposes.

Use the command VDM/RESET/VALUE=AVERAGE to reset the average.

NOTE: The average will get increasingly insensitive to current information as the amount of historical information grows.  We recommend that you reset the average at least once every
three months.  Resetting the average does NOT affect the maximum.

Averages
VDM incorporates historical data into the average calculation so that extremes in usage do not affect the average as strongly as they normally would.

Every data collection, VDM performs the following calculations:

    Total-to-date = Total-to-date + Current-usage
    Number-of-observations = Number-of-observations + 1

To calculate an average, VDM uses the formula:

                   Total-to-date
    Average = ---___________________
              Number-of-observations


The reset function sets:

    Total-to-date = Average
    Number-of-observations = 1

Resetting maximums


This chapter shows you how to use VDM to reset allocation maximums.

VDM maintains a record of the maximum number of blocks allocated to each user.  The maximum is checked and updated if necessary each time data collection is done.

Use the command VDM/RESET/VALUE=MAXIMUM to reset the maximum.

After the reset command, the maximum will be equal to the current usage.

NOTE: Since the maximum is a "high water mark", it may get increasingly unrealistic compared to current information as the time from the last reset grows.  We recommend that you reset the maximum at least once every three months.  Resetting the maximum does NOT affect the average.

VDM and disk quotas


This chapter discusses disk quotas and their relationship with VDM.

Many sites do not use disk quotas.  This is unfortunate since quotas are a valuable tool for disk management.  The common complaint that users have is that quotas prevent them from getting their work done.  However, with sensible quotas which are reviewed regularly, users will not complain about being hampered and you will be able to support more users with the same amount of disk.  VDM provides you with the numbers to create satisfactory
PERMANENT and OVERDRAFT limits for your users.

NOTE: VDM will work whether you have quotas enabled or disabled.

If you wish to collect quota information with VDM and a quota file does not exist on the volume, you must CREATE one using the DISKQUOTA section of the SYSMAN utility.

If quotas are NOT enabled on the volume, data collection will ENABLE them, REBUILD the quota file and DISABLE them.

If quotas ARE enabled, data collection will REBUILD the quota file, and leave the quotas ENABLED.

In all cases, VDM's processing will not affect the rest of your operation.

NOTE: If you don't use quotas, you must disable them when you MOUNT the disk volume since the default is to enable the disk quotas when the volume is mounted.  To disable the
quotas when mounting the disk, use the /NOQUOTA qualifier
on the mount command.

Creating and optionally enabling quota files
To create a quota file:

    1. Wait until you are alone on the system and invoke the SYSMAN utility
       $ MCR SYSMAN
    2. CREATE the quota file
       SYSMAN> DISKQUOTA CREATE /DEVICE=diskname
    3. MODIFY [0,0] which sets the default values for the initial build
       SYSMAN> DISKQUOTA MODIFY [0,0]/DEVICE=diskname/PERM=1000000
4. REBUILD the quota file to create quota entries for every UIC currently on the
disk
       SYSMAN> DISKQUOTA REBUILD /DEVICE=diskname
    5. ENABLE disk quota checking (optional)
       SYSMAN> DISKQUOTA ENABLE /DEVICE=diskname
    6. Exit the SYSMAN utility
       SYSMAN> EXIT

If you are not using quotas, the above procedure prevents problems with users exceeding their quotas.  It allows any user to allocate essentially unlimited space (up to 1,000,000 blocks) on the volume.  If an account creates files on the volume then the account UIC is added to the quota file (REBUILD does this), their default quota will be the value stored in [0,0].  At some later date, when you have decided on reasonable quotas, you can adjust the values in [0,0] and the individual UICs.

For more information about disk quotas and disk management, refer to the OpenVMS SYSMAN manual and the OpenVMS System Manager's Guide.
VDM and the OpenVMS ANALYZE/DISK utility


  This chapter discusses the OpenVMS utility ANALYZE/DISK and its relationship with VDM.

ANALYZE/DISK is a utility supplied by Digital to verify the contents of a disk pack. It verifies that blocks are not doubly allocated, that file headers are accurate and that file pointers are valid.  This requires a considerable amount of I/O activity.

/USAGE
VDM runs VERIFY with the /USAGE option to collect data on disk allocation by file and UIC.  This is the primary reason VDM runs VERIFY.

/READ_CHECK
VDM runs VERIFY with the /NOREAD_CHECK option.  READ_CHECK performs additional verification of the disk but at the cost of increased I/O activity.  Data collection will run much slower if you substitute /READ_CHECK but it will do a better job of verifying your disks.

/REPAIR
VDM runs VERIFY with the /NOREPAIR option.  We do not recommend using /REPAIR during VDM data collection runs.

NOTE: If you have not been running ANALYZE/DISK regularly, you may have problems on the first VDM data collection run because of the number of errors or inconsistencies the ANALYZE/DISK utility locates. You may need to run /REPAIR manually to clean up these error and inconsistencies.

For more complete information, refer to the OpenVMS VERIFY manual.

Handling volume and shadow sets


 This chapter shows you how VDM handles volume and shadow sets.

Volume sets
A volume set is a logical volume which includes two or more physical volumes.

VDM will work on volume sets.  When you specify the disk names for the collection procedure, you should specify only the first disk of the volume set.  All the data that VDM needs is contained on that first volume.  If by accident a secondary volume disk is specified VDM will automatically ignore it.

When using VDM's monitor to check free space on volume sets, use the /DISK=device_name to add a disk record to the permanent data file.  The device name of any volume in the set may be specified to add and/or change the free space thresholds for the volume set. However, when the parameters of the database are listed, the device name shown will be the device name of the root volume.

Shadow sets
A shadow set is a duplicate disk to which a write is made every time a write is made to the volume being shadowed.

Enter the shadow set name into the DISKNAMES.DAT file and VDM will collect data on it.

Files you need to use VDM

This chapter shows you how VDM and OpenVMS files are used by VDM and the amount of disk space they require.

VDM directory structure
The VDM directory contains all executables, objects, documentation and command procedures.  Here is its structure:


    [VDM
        .CDU]    Command Definition
        .COM]    DCL Command Procedures
        .DAT]    Data Files
        .DEF]    Include Files, SOURCE licenses only
            .VAX]    VAX OpenVMS
            .AXP]    Alpha AXP OpenVMS
        .DOC]    Documentation and HELP text
        .EXE        Executables
            .VAX]    VAX OpenVMS
            .AXP]    Alpha AXP OpenVMS
        .LIS]    Compile Listing Files, SOURCE licenses only
        .MAP]    Compile Map Files, SOURCE licenses only
        .MSG]    Error Message text and object
        .OBJ]    Object Library
            .VAX]    VAX OpenVMS
            .AXP]    Alpha AXP OpenVMS
        .SRC]    FORTRAN Source, SOURCE licenses only
            .VAX]    VAX OpenVMS
            .AXP]    Alpha AXP OpenVMS

VDM requires 1,800 blocks for the VAX/OpenVMS version or 2,700 blocks on the AXP (4,000 blocks if they are both installed in the same directory structure).  If you have source, those directories requires an additional 1,900 blocks.
            
SYSUAF.DAT
VDM reads information from the OpenVMS System User Authorization File.  Refer to the chapter "VDM and the OpenVMS user authorization file (SYSUAF.DAT)" for more information.

Data files
VDM has five permanent data file types:

• USAGE by UIC, filename VDM_UIC_date.DAT, for each data collection
• USAGE by Directory, filename VDM_DIR_date.DAT, one for each data collection
• DISKNAMES.DAT, one on each node that data is collecting data
• VDM_PLA.DAT, one on each node that is collecting data
• VDM_PERM_DATA.DAT, one on each node that VDM/MONITOR is running on

Usage by UIC
These files contain disk allocation data used to generate analysis reports for username, UIC, account, and owner. The files are named VDM_UIC_date.DAT. It is an indexed file keyed on UIC and disk volume name. There is a record in the file for each UIC and disk (ie if the UIC has blocks on three disk drives, there are three records). Each record contains the fields:

• Disk name
• UIC Group
• UIC Member
• UIC
• Current allocated blocks
• Current used blocks
• Average allocated blocks
• Average weight
• Maximum allocated blocks
• Quota

Username, account and owner are obtained from the UAF file directly, during report generation, rather than being stored in the usage record.

The FORTRAN structure describing the record is stored in VDM_UIC_RECORD.TXT in the text library VDM_TEXT.TLB in [VDM.DEF.VAX] or [VDM.DEF.AXP].


Usage by DIRECTORY
These files contain directory data used to generate directory analysis reports.  It is an indexed file keyed on disk volume name and directory.  The files are named VDM_DIR_date.DAT. Each record contains the fields:

• Disk name
• Directory
• Current allocated blocks
• Current used blocks
• Average allocated blocks
• Average weight
• Maximum allocated blocks

The FORTRAN structure describing the record is stored in VDM_DIR_RECORD.TXT in the text library VDM_TEST.TLB in [VDM.DEF.VAX] or [VDM.DEF.AXP].

DISKNAMES.DAT
This file contains the disknames you wish VDM to collect information for.  It also tells VDM whether or not to update quotas for that disk, and to leave them enabled or disabled.  This file is created during the installation procedure and can be recreated by executing
CREATE_DISK_FILE.COM in the [VDM.COM] directory.  It can also be modified using a text editor such as EVE (TPU) or EDT.

VDM_PLA
This file is used by VDM for reporting purposes.  It is an indexed file keyed on disk name and is recreated every data collection.  There is a record in the file for each disk that VDM collects data on.  Each record contains:

• Disk name
• Total allocation
• Total used
• Maximum blocks
• Quota

The FORTRAN structure describing the record is stored in VDM_PLA_RECORD.TXT in the text library VDM_TEXT.TLB in [VDM.DEF.VAX] or [VDM.DEF.AXP].

VDM_PERM_DATA.DAT
 This file is used and maintained by VDM's monitor. It contains the Defaults and values for all disks which VDM has been configured to monitor.

Work files
VDM creates two temporary data files during data collection.  The size of these temporary files depends on the number of disks you are collecting data for.  VDM requires approximately 400 blocks for these files for every five disks being included in the data collection. They are deleted at the end of the data collection procedure.

Data file removal
VDM does not delete any data files.  You must purge the data files you do not want.

You must decide how many sets of data files you wish to keep and establish some procedure to remove old files.

Data logical name
All permanent VDM data files are stored in the directory pointed to by the logical VDM_DAT:.  Temporary files are created in SYS$SCRATCH:.

Sort work files
Sorts can put a large I/O load on the system.  To spread out the I/O load, the sort work files can be assigned to different devices.  Use the statement

$ ASSIGN device: SORTWORKn

where n is the number of the work file (number from 0 to 9).  This will split the I/O load over the drives specified. You can add these assign statements to the data collection procedure (COLLECT.COM) to balance the I/O load during data collection.

Logicals you need to use VDM


This chapter shows you the logicals that VDM uses and how to define them.  To use VDM, you must define several logicals.  Here is a description of each logical that may be defined on your system.

VDM$NOCONVERT - Disables conversion of logical disk names to their physical equivalent.

VDM_CDU - This logical points to the [VDM.CDU] directory.  It is used to access the VDM command definition table.  VDM_CDU is optional.

VDM_COM - This logical points to the [VDM.COM] directory.  It is used to access VDM DCL command procedures.  VDM_COM is optional.

VDM_DAT - This logical points to the [VDM.DAT] directory.  It is used to access the data files.  It must be defined in the system logical table.  VDM_DAT is required.

VDM_DOC - This logical points to the [VDM.DOC] directory.  It is used to access the screen interface help files.  It must be defined in the system logical table.  VDM_DOC is required.

VDM_EXE - This logical points to the [VDM.EXE.VAX] or [VDM.EXE.AXP] directory.  It is used to access the VDM executables.  It must be defined in the system logical table.  VDM_EXE is required.

VDM_LOG_FILE - This logical defines the location and name of the log file if you want it to be different from the default location and name.

VDM_PERM_DATA - This logical defines the location and name of the permanent data file if you want it to be different from the default location and name.

GO_DEVICE - This logical is used to control the default directory when the drive is changed.  It is normally defined in your process logical table by an entry in your LOGIN.COM.  If you wish to modify the default value of this logical, you should define it in your LOGIN.COM file.  The logical has only two valid values: "ON" and "OFF".

GO_DISPLAY - This logical is used to control the display of the current directory message.  It is normally defined in your process logical table by an entry in your LOGIN.COM.  If you wish to modify the default value of this logical, you should define it in your LOGIN.COM file.  The logical has only two valid values: "ON" and "OFF".

GO_NODE - This logical is used to control the display of the current directory message.  It is normally defined in your process logical table by an entry in your LOGIN.COM.  If you wish to modify the default value of this logical, you should define it in your LOGIN.COM file.  The logical has only two valid values: "ON" and "OFF".

GO_PROMPT - This logical is used to control prompt redefinition.  It is normally defined in your process logical table by an entry in your LOGIN.COM.  If you wish to modify the default value of this logical, you should define it in your LOGIN.COM file.  The logical has only the following valid values: "ON", "OFF", "1", "2" or "3".

You can define the standard VDM logicals by typing:

    $ @SYS$MANAGER:VDM_SYSTEM_LOGICALS.COM

SYSUAF - This logical points to the UAF file.  The default definition is "SYS$SYSTEM:SYSUAF.DAT"; the system will use this file specification of SYSUAF is not defined.  Note that this is a logical defined by OpenVMS rather than a VDM logical.

VDM$SHOW_COMMAND -  If this logical is defined VDM will include the DCL command used to generate a report at the bottom of the report.

VDM$KEEP -  If this logical is defined VDM will submit all action procedure jobs from the monitor with /keep set so the logs are not deleted when the job completes.

VDM$USE_DISK_NAME - VDM uses the $GETDVI item DEVNAM to determine a disks name during data collection and for subsequent reporting. If VDM$USE_DISK_NAME is defined, in the system table, to be FULLDEVNAM VDM will use that item to determine the device name instead. This is primarily useful at sites using HSC controllers that move disks periodically since the DEVNAM will change but FULLDEVNAM normally doesn’t.

VDM$ERROR_HANDLER - By default the Monitor detached process traps severe errors and continues to prevent an error from stopping the monitor. Defining this logical to anything but itself will instruct the VDM monitor to stop running when it detects a severe error.

The command procedure SYS$MANAGER:VDM_SITE_LOGICALS.COM is new with Version 6 of VDM. All logicals expect VDM_COM, VDM_DAT, VDM_DOC, VDM_CDU and VDM_EXE that are defined should be added to this procedure which is executed during system startup. This procedure will not be replaced during subsequent upgrades and will, therefore, preserve your site specific logical names and their values.


Privileges you need to use VDM

This chapter shows you the privileges needed to do various VDM operations.

VDM requires the following privileges to run:
    • SYSPRV
    • TMPMBX
    • NETMBX

Data collection
For ANALYZE/DISK operations, VDM does not require the BYPASS and EXQUOTA privileges, but we recommend the process have those privileges.  For more details, see the OpenVMS VERIFY manual.

For QUOTA operations, VDM requires one of the following:
-     SYSPRV
-     a system UIC
-     ownership of the volume

For more details, see the OpenVMS DISK QUOTA UTILITY manual or the SYSMAN UTILITY manual.

Data analysis
For data analysis (generating reports), VDM requires READ, WRITE and DELETE access to the VDM data files and READ access to the system UAF file.

VDM/MONITOR
VDM/MONITOR requires the following privileges to run.
    • DETACH
    • OPER
    • PRMMBX
    • SYSNAM
    • SYSPRV
    • WORLD

NOTE: If you want to start the detached process with a base priority of 10 (a higher priority ensures more precise data collection) you require ALTPRI privilege. Otherwise, the
base priority of the creator process will be used.

You can acquire all the necessary privileges by typing:

    $ @VDM_COM:SET_PRV.COM
Resources you need to use VDM


This chapter shows you the resource quotas and limits you need to do various VDM operations.

VDM may abort with the error INSUFFICIENT VIRTUAL MEMORY when running the ANALYZE/DISK portion of the data collection procedure.  This error can be caused by the following reasons:

• The sysgen parameter VIRTUALPAGECNT is too low

• The UAF parameter PGFLQUOTA is too low

• The UAF parameter WSQUOTA is too low

• The paging and/or swapping files are too small