HP OpenVMS Systemsask the wizard |
The Question is: How do I quickly remove terminated licences from VMS 7.1 ? Can this be done with the lic command ? Thanks, Richard The Answer is :
Terminated PAKs can exist in the permanent license database, the
volatile license data base or both.
A terminated PAK in the permanent data base will not load. Any attempt
to do so will get the message:
%LICENSE-W-TERM, BASIC ATP-SN-1997JAN15-1427 License has terminated
Such PAKs do nothing more than generate a nuisence message at startup
time or when the product is reloaded (but more about them later)
An active (LOADed) PAK that has terminated will generate a run time
message, for example:
$ basic myprog
%LICENSE-F-NOAUTH, DEC BASIC use is not authorized on this node
-LICENSE-F-TERMINATED, license has terminated
-LICENSE-I-SYSMGR, please see your system manager
If the loaded units are combined from multiple PAKs, the terminated PAK
will terminate all available units, thus preventing use of a product
which should be useable.
To refresh the active PAK, simply UNLOAD and LOAD the product. The
UNLOAD will remove all units, then the LOAD will only load
non-terminated units. Providing there are still enough units available,
the product will be authorized. You're then in the state where the
terminated PAK in the permanent database generates a LICENSE-W-TERM
message. For example:
$ LICENSE UNLOAD ADA
$ SHOW LICENSE ADA
Active licenses on node WIZARD:
%SHOW-I-NOLICMATCH, no licenses match search criteria
$ LICENSE LOAD ADA
%LICENSE-W-TERM, ADA BIX-AK-95143-1-SNO-AGFOXX-165 License has terminated
%LICENSE-I-LOADED, DEC ADA was successfully loaded with 100 units
To determine which active products have terminated units, use the SHOW
LICENSE command with /BEFORE and /TERMINATION_DATE:
$ SHOW LICENSE/BEFORE/TERMINATION_DATE=TODAY
Active licenses on node WIZARD:
----- Product ID ------ ---- Rating ----- -- Version --
Product Producer Units Avail Activ Version Release Termination
BASIC DEC 100 0 100 0.0 (none) 9-JUN-2004
%SHOW-I-TERMIMM, 1 license has terminated or will terminate in 30 days
This will show products which have terminated. You could put a date
into the future to see what's going to expire soon. By default SHOW
LICENSE will warn you of upcoming terminations in the next 30 days,
see the TERMIMM message above. The warning interval can be modified
with the /WARNING_INTERVAL qualifier.
Back to the permanent data base. Use LICENSE DELETE or LICENSE DISABLE
to eliminate LICENSE-W-TERM messages. If there is only one PAK for
the product, only the product name is necessary to delete or modify the
PAK, otherwise the authorization number will be required. For example:
$ LICENSE DISABLE ADA/AUTH=BIX-AK-95143-1-SNO-AGFOXX-165
There is no /BEFORE/TERMINATION_DATE qualifier for DELETE or DISABLE,
so you will need to use LICENSE LIST to find terminated PAKs.
$ LICENSE LIST/BEFORE/TERMINATION_DATE=TODAY
Since the authorization number isn't listed in the default brief listing,
you'll need to add /FULL. PIPE the output into SEARCH if you have many
terminated PAKs:
$ PIPE LICENSE LIST/FULL/BEFORE/TERM=TODAY | -
SEARCH SYS$PIPE "Authorization:","Name:"
Authorization: BIX-AK-95143-1-SNO-AGFOXX-165
Product Name: ADA
Authorization: BIX-WP-1999OCT19-00127
Product Name: BASIC
Note that the authorization code preceeds the product name.
If you have very many terminated PAKs (this should be a highly unusual
situation as most real PAKs do not terminate), send the output into a
file and edit it to generate LICENSE DISABLE or DELETE commmands.
Tip: Change the command to
$ PIPE LICENSE LIST/FULL/BEFORE/TERM=TODAY | -
SEARCH SYS$PIPE "Authorization:"/OUTPUT=DISABLE_EXPIRED.COM
Now edit DISABLE_EXPIRED.COM and use a global replace :
"Authorization" becomes "$ LIC DISABLE */AUTH"
Now execute the file and you're done.
|