HP OpenVMS Systems Documentation
HP OpenVMS License Management Utility Manual
4.6.3 Controlling User Access
To control which users have access to a product, use the LICENSE MODIFY command with the /RESERVE qualifier. This qualifier takes an argument list of user names called the reservation list. Although the definition of a user can differ from product to product, most products accept the user name that OpenVMS maintains for each account. This is the name you type at the Username prompt during login. See your product's Software Product Description (SPD) for details.
If your PAK specifies the RESERVE_UNITS option, you must assign one or more users to a reservation list. The number of user names allowed per list depends on the number of activity units available. Calculate this number as you would for any activity license. For example, if a software product requires 50 license units per activity and your PAK provides 100 license units, you have a 2-activity license. If the PAK also specifies the RESERVE_UNITS option, you have an unlimited activity, two-user license. For this license, you must create a reservation list with at least one, but no more than two, names.
Note that the LICENSE MODIFY command affects only data in the license database; it does not affect licenses already loaded. To change a loaded license, reload it with a LICENSE LOAD command. For example:
This adds new users P_LESH and M_HART to any list already established for the specified product. You can remove a user name with the /REMOVE qualifier.
You can have many Personal Use Licenses for the same product. For license loading, LMF combines all of the license units and determines the number of users according to the total number of units. Therefore, the total number of names on combined reservation lists for this product must not exceed the number LMF authorizes from the unit count, because LMF authorizes only the correct number from the lists and rejects extra names.
Although you can find extra or repeated names using one or more LICENSE LIST/FULL commands, you cannot easily predict which users LMF will reject. Do not assume that LMF denies access to the third name listed on the reservation list of a two-user license. The total number of names and total number of license units is the important calculation.
To load corrections to a reservation list you must enter the LICENSE LOAD command for the licenses. The following example includes the warning message for too many names:
Because LMF combines the license units, you can
assign one long reservation list to a single license; LMF simply adds the license
units from the combinable licenses and counts the names in all reservation
lists for those licenses. If you have three combinable licenses that authorize
use to six users, you can modify one of them to have a 6-name reservation list.
Note that this differs from the behavior of include and exclude lists with
node names in an OpenVMS Cluster.
If you have many variations of licenses for a product (for example, with different versions, tokens, or hardware identifiers), and you think that you are not getting maximum use of the product, you can check the order of loading of the product licenses. By default, LMF assigns a selection weight to each license and loads each license in descending order of selection weight. The grant order is the order in which LMF checks licenses before granting one.
Loading is the process that LMF uses to store licenses in memory. Granting is the actual allocation of units to a user using a licensed product. Selection weights contol the order in which LMF checks multiple licenses for a single product while attempting to perform a license grant for that product.
To determine grant order, enter the DCL command SHOW LICENSE/FULL. You can then enter the LICENSE LIST command with the /SELECTION_WEIGHT qualifier to display the selection weight. Modify selection weights of licenses as needed with the /SELECTION_WEIGHT qualifier to the LICENSE MODIFY command.
To change the selection weight, use LICENSE MODIFY/SELECTION_WEIGHT, and then
load the changed licenses with LICENSE LOAD.
A previous version of this manual incorrectly stated that you must define the logical name LMF$DISPLAY_OPCOM_MESSAGE in order for messages to appear.
If you have already defined this logical name, you should delete the definition.
Define the LMF$DISPLAY_OPCOM_MESSAGE logical name only if you are explicitly directed by HP to do so (for debugging purposes). When defined, this logical name causes many "noise" messages to be displayed on the operator's console. Some of these messages can be confusing and misleading to the point of suggesting that a product is not licensed when in fact it is.
To see if this logical name has been defined on your system, enter the following command:
To delete the logical name, enter the following command:
4.8 Troubleshooting Licensing Problems
If you are having problems that appear to be related to reaching PAK limits or missing licenses, you can perform basic troubleshooting using the LICENSE and SHOW LICENSE commands.
First, try listing the PAKs using the following command:
This command will list all the PAKs that are in the License Database (.LDB) file. These licenses may or may not have been loaded into the memory license database. Check to make sure that all your active licenses have been loaded and that any unused licenses are not being loaded into the License Database.
Next, use the /HISTORY qualifier to check licensing activity.
This command shows you all the activity you have performed to the License Database. Make sure that the history matches what you think should be.
You can also use the SHOW LICENSE command to see if the number of licenses is correct. The /UNIT_REQUIREMENTS command displays the information in the License Unit Requirement Table.
Use the /CLUSTER qualifier to diplay the license unit requirments for every node in an OpenVMS cluster.
Use the SHOW LICENSE/USAGE command to see how many license units are loaded and how many are allocated and available. SHOW LICENSE/USAGE also tells you the license type for each product on the system.
If you own multiple license types for a single product in an OpenVMS cluster, you can only view the usage information for the license type loaded on the node from which you issued the SHOW LICENSE/USAGE command. To find out the usage of another license type loaded on another node, issue the command on that node.
In an OpenVMS Cluster, usage information is limited to the local license type. For example, LMF considers VAX and Alpha availability licenses different license types. If you are running both VAX and Alpha systems in a cluster, usage information for availability licenses is limited to the local system type. For example, if you have HP C installed on all nodes in your OpenVMS Cluster, you can display HP C license allocation on all the VAX nodes in the cluster from any VAX node with HP C installed, but you cannot display the HP C license allocation on the Alpha nodes.
$ LICENSE MODIFY OPENVMS-ALPHA/AUTHORIZATION=xxxxx- _$ /INCLUDE=(ANDA1A,ANDA2A,ANDA3A)
Because this example assumes that ANDA1A was already in a cluster, the authorization number is required to identify the one PAK of many OPENVMS-ALPHA license PAKs in the License Database (.LDB) file.
Copies licenses from one License Database to another. When you use LICENSE COPY, LMF disables the source license and registers a copy in the destination License Database as if it were a new license. If the terms and conditions of your license contract allow it, you can reenable the source database license by using LICENSE ENABLE.
LICENSE COPY cannot be used to create a copy of a license in the same database as the source of the copy.
LICENSE COPY product-name[,...] output-database
product-name[,...]Name or names of products with a license to be copied to the output License Database.
output-databaseFile specification of the License Database to which the license or licenses should be copied. This database must have been created previously using LICENSE CREATE.
If you enter a partial file specification (for example, specifying only a directory), LMF$LICENSE is the default file name, and .LDB is the default file type. If you do not specify a device or directory, the current default device and directory are used.
Specifies that all licenses with the given product name should be copied. This qualifier affects only the product name that immediately precedes it in the command string.
Specifies a string that helps identify the license you want to copy. You must enter the authorization string exactly as it appears on your PAK. Use this optional qualifier only if you need it to identify the license. This qualifier affects only the product name that immediately precedes it in the command string.
/DATABASE=filespecSpecifies the location of the License Database from which the license should be copied. The default file specification is defined by the logical name LMF$LICENSE, which points to SYS$COMMON:[SYSEXE]LMF$LICENSE.LDB on an unmodified OpenVMS system. Use this optional qualifier only if you do not use the default License Database name and location.
Specifies the name of the company (for example, HP) that issued the PAK for the product. Use this optional qualifier only if you need to identify the license. This qualifier affects only the product name that immediately precedes it in the command string.
/NOLOG (default)Controls whether LICENSE COPY displays the name of each license that it copies.
Specifies the name of the company (for example, HP) that owns the product for which you have a license. Use this optional qualifier only if you need to identify the license. This qualifier affects only the product name that immediately precedes it in the command string.
To copy a license from one database to another, use LICENSE COPY. The following conditions apply to a LICENSE COPY transaction:
- The status of the source database license changes to disabled.
- Network copies are supported within the limits of remote FAL access. If you use access control strings, such as "USERNAME password" within the file specification, the actual password string is not stored.
- LICENSE COPY does not transfer any user-supplied data such as reservation lists, modified termination dates, modified units, include or exclude node lists, or comments.
$ LICENSE COPY FORTRAN BACKUP_DATA:BACKUP.LDB
This command copies the Fortran license in the default License Database to the BACKUP_DATA:BACKUP.LDB License Database. This command fails if there is more than one Fortran license in the default database.
$ LICENSE COPY FORTRAN /DATABASE=BACKUP_DATA:BACKUP.LDB -_$ BACKUP_DATA2:BACKUP2.LDB
This command copies the Fortran license in the source License Database to the BACKUP_DATA2:BACKUP2.LDB License Database. This command fails if there is more than one Fortran license in the source database.
$ LICENSE COPY FORTRAN /ALL BACKUP_DATA:BACKUP.LDB
This command copies all Fortran licenses in the default License Database to the BACKUP_DATA:BACKUP.LDB License Database.
$ LICENSE COPY FOR* BACKUP_DATA:BACKUP.LDB
This command copies all licenses whose product names begin with the string "FOR" from the default License Database to the BACKUP_DATA:BACKUP.LDB License Database. In this case, using the wildcard character (*) implies the use of /ALL.
$ LICENSE COPY * BACKUP_DATA:BACKUP.LDB
This command copies all licenses from the default License Database to the BACKUP_DATA:BACKUP.LDB License Database. In this case, using the wildcard character (*) implies the use of /ALL.
$ LICENSE COPY * /PRODUCER=DEC BACKUP_DATA:BACKUP.LDB
This command copies all licenses with the producer name DEC from the default License Database to the BACKUP_DATA:BACKUP.LDB License Database. In this case, using the wildcard character (*) implies the use of /ALL.
$ LICENSE COPY D%% BACKUP_DATA:BACKUP.LDB
This command copies all licenses beginning with a "D" followed by exactly two characters from the default License Database to the BACKUP_DATA:BACKUP.LDB License Database. In this case, using the wildcard character (%) implies the use of /ALL.