Table of Contents * Previous Chapter * Next Chapter
PC NOTE: On all platforms, the utilities can be invoked with the lmutil command: lmutil lmstat, lmutil lmremove, etc. On the PC, this is the only way to access the utilities. So where you see, for example, the lmstat commend, read lmutil lmstat.
Use lmstat. This is a utility shipped to vendors and intended for distribution to end-users.
% lmstat -a -c `path-t o-license-file'
will list all the current information available from the server. Note that uncounted licenses are NOT reported by lmstat - only counted licenses.
Limited (and sometimes misleading) information about usage is found in the lmgrd log file. Correct usage information can be obtained using FLEXadmin's reporting capability.
Use the lmver utility. If you can't find an lmver, link or copy lmstat to lmver, and then it will work as lmver. (All the flexlm utilities are the same binary, and the name of the binary is used to determine behavior.)
There are 3 components to FLEXlm: lmgrd, vendor daemon and application. Run lmver `path-to-component' and it will report the FLEXlm version.
Alternately, you can use the Unix 'strings' command:
strings component | grep Copy
where `component' is a binary, like lmgrd or vendor daemon or application.
PC Note: The version is the name (and date) of the lmgrxxx.dll. Here's the PC lmgrxxx.dll versions:
This happens for 2 reasons:
Use lmcksum (copy lmstat to lmcksum if you can't find lmcksum - See Q8.3). lmcksum -c `license-file'. If you have a v4.0+ license file, and the vendor has included `ck=nnn' on the FEATURE lines, lmcksum will simply report OK or BAD next to each FEATURE line. Otherwise, numbers are reported, and you can ask your supplier to run the same command on the original file, and compare numbers.
Use the lmdiag utility. (If you can't find lmdiag, copy a v4.0+ version of lmstat to lmdiag, and you'll have it.) lmdiag will analyze the problem, and, if requested, determine if the problem is that the server is running on a different port than indicated in the license file.
lmdiag also prints out a description of the license file in easily understandable English.
In summary, lmdiag attempts a checkout of the feature, and if it fails, reports why.
That's because lmremove is not intended to free licenses. It has one purpose: when a client node crashes, the license is not freed immediately, and can sometimes take a full day to release the license. This is because when the node crashes the networking also fails.
If you free a license with lmremove for an active process, the application will detect this shortly, and re-checkout the license.
Get a copy of 4.0+ lmgrd, and start the server with the lmgrd -x lmdown switch. This disables the lmdown command.
Use kill, without a flag. DON'T use kill -9. If you use kill without a flag, the server is able to shutdown cleanly, the same, in fact, as if lmdown had been used.
With redundant servers, lmdown returns immediately, but the servers, after having received the request, wait one full minute before actually shutting down. (This is in order to avoid a race condition where a second server would attempt to re-establish quorum with the server that shut down.) Be patient, wait the minute, and you'll see it works.
Table of Contents * Previous Chapter * Next Chapter