The license file contains all site-specific information required by FLEX lm . This information includes:
· Vendor names and paths to vendor executables
The license file must be accessible to every machine that runs a FLEX lm -licensed application, and each machine designated as a license server. Before you can use the application you must start the license manager daemon ( lmgrd
) using the following syntax:
-c license_file_path Full pathname to the license file. Only use this option if the license file is not installed in the default location " /usr/local/flexlm/licenses/license.dat ". See Specifying Location of the License File for information about using alternate locations.
connect_timeout Timeout, in seconds, for "connect" calls to other daemons if operating in multi-server mode.
License File Format describes the format of the license file. The section Anatomy of a License File includes sample license files.
Specifying Location of the License File
If your software vendor recommends a specific location for your license file, or if the default is not practical for you, use one of the following two methods to put the license file in another location:
· Set the path when you start lmgrd
· Set the path with an environment variable
When running the application on multiple nodes, you have three options for making your license file available on all the machines:
· Place the license file in a partition which is available (via NFS " ) to all nodes in the network that need the license file.
· Copy the license file to all of the nodes where it is needed.
· Read the license file data from lmgrd
, by specifying LM_LICENSE_FILE
as " port@host ", where host is the server hostname and port is the port number from the license file.
Note: port@host is only supported in FLEX lm v2.4 or later versions.
Since the vendor daemon keeps track of license usage, and since the license file contains encrypted data to protect it against modification, you may move and copy the license file as much as you want.
Note: If you are running redundant servers, you should have one copy of the license file (as well as copies of
lmgrd
and the vendor daemons) on each server node. If you do not do this, you lose all the advantages of having redundant servers, since the node holding these files becomes a single point of failure.
Before selecting an option you must install lmgrd
(the license manager daemon) and the vendor daemon. Use the /etcdirectory a reasonable location, since the daemons will probably be used at boot time.
Setting the path at startup
To start the license manager daemon ( lmgrd
) become root and execute a command similar to the following.
Starting the daemon automatically
To start the lmgrd daemon automatically each time you reboot the license server, add a line similar to the following to either /etc/rc.boot,
/etc/rc.local, or the appropriate startup file:
daemon_location
Full pathname to the lmgrd executable.
license_file_path
Full pathname to the license file
log_pathname
Full pathname to the license log file.
You must reboot your license server to start the daemon.
FLEX lm supports dozens of platforms. Consult your operating system's man pages for specific information about modifying startup files.
Setting the path with an environment variable
Use the environment variable LM_LICENSE_FILE
to set the location of the license file. For example in the C shell:
In the Korn and Bourne shells:
license_file_path
Full pathname to the license file.
Note: The "-c" option overrides the setting of the
LM_LICENSE_FILE
environment variable for lmgrd
. See Combining License Files for more information about LM_LICENSE_FILE
.
License File Format
The format of the license file is a SERVER line (or lines), followed by one or more DAEMON lines, followed by one or more FEATURE lines.
You can modify four data items in the license file:
· Node names on the SERVER line(s)
· Port numbers on SERVER line(s)
· Pathnames on the DAEMON line(s)
· Options file pathnames on DAEMON line(s)
Note: Everything else is used to compute the encryption code, and should be entered exactly as supplied by your software vendor. All data in the license file is case sensitive, unless otherwise indicated.
In the following sections, options modifiable by the system administrator are underlined.
SERVER lines
The SERVER line specifies the node name and hostid of the license server, and the port number of the license manager daemon ( lmgrd
). Normally a license file has one SERVER line. More than one SERVER line means that you are using redundant servers. For more information about redundant servers, see Selecting Server Nodes . The format of theSERVER line is:
nodename
String returned by the Unix hostname or on some systems, name -n
command.
id
String returned by the lmhostid command.
port-number
TCP port number to use (optional, but If not specified, then the FLEX lm TCP service must be present in the network services database.)
DAEMON lines
The DAEMON line specifies the daemon name and path. The format of the DAEMON line is:
daemon-name
Name of the vendor daemon used to serve some feature(s) in the file.
path
Pathname to the executable for this daemon.
options
Full pathname of the end-user specified options file for this daemon. (See Options File ) FLEX lm does not require an options file.
FEATURE lines
Note: You cannot edit the FEATURE line. Use the FEATURE line exactly as supplied by your vendor.
The FEATURE line specifies the name of the feature to be licensed. A feature can be the name of a program, a program module, or option. Any amount of white space of any type (that is, tabs or spaces) can separate the components of a line. The FEATURE line is as follows:
name Name given to the feature by the vendor.
daemon Name of the vendor daemon; also found in the DAEMON line. The specified daemon serves this feature.
version Version of this feature that is supported by this license.
expdate Expiration date, for example, 7-may-1993 (if the year is 0, then the license does not expire).
nlic Number of concurrent licenses for this feature. If the number of users is set to 0, the licenses for this feature are uncounted and no lmgrd
is required.
code Encrypted password for this FEATURE line. The start date is encoded into the code; thus identical codes created with different start dates will be different.
"vendor_string" Vendor-defined string, enclosed in double quotes. This string can contain any 64 characters except a quote. (White space is ignored.)
hostid String returned by lmhostid . Used only if the feature is to be bound to a particular host, whether its use is counted or not. (Numeric hostids are case insensitive). See Hostids for FLEXlm-Supported Machines for more information.
FEATURESET lines
Note: You cannot edit FEATURESET line. Use the FEATURESET line exactly as supplied by your vendor.
The FEATURESET line is used to prevent FEATURE lines from being added to or removed from the license file.
The format of the FEATURESET line is as follows:
daemon-name Name of the vendor daemon used to serve some feature(s) in the file.
code Encryption code for this FEATURESET line. This code encrypts the codes of all features this daemon supports, so no FEATURE lines can be removed, added to, or rearranged in this license file.
Anatomy of a License File
The following example is a license file for single vendor with two features.
-
SERVER excellent_server 17007ea8 1700
-
DAEMON xyzd /etc/xyzd
-
FEATURE xyz_app1 xyzd 1.000 01-jan-1993 10 \ 1EF890030EABF324 ""
-
FEATURE xyz_app2 xyzd 1.000 01-jan-1993 10 \ 0784561FE98BA073 ""
This license file allows the license server excellent_server with the hostid 17007ea8 to serve 10 floating licenses forxyz_app1 and xyz_app2 to any user on the network.
Types of License Files
License files are created by the software vendor. License files can specify any of the following types of software access:
· Concurrent usage on a limited set of hosts
· Mixed node-locked and concurrent usage
Concurrent (floating) usage
Concurrent usage means anyone on the network can use the licensed software, up to the limit specified in the license file. (Also referred to as f loating licensing or n etwork licensing .) Concurrent usage licenses do not have hostids on the individual FEATURE lines. This configuration requires an lmgrd
daemon because it is going to count the concurrent usage of the licenses.
Example
An example of a license file that provides concurrent usage is:
FEATURE f1 xyzd 1.00 1-jan-95 2 code1 ""
FEATURE f2 xyzd 1.00 1-jan-95 6 code2 ""
FEATURE f3 xyzd 1.00 1-jan-95 1 code3 ""
This license file allows two copies of feature "f1", six copies of feature "f2", and one copy of feature "f3" to be run anywhere on the network that can access the license server "lulu".
Node-locking
Node-locking means the licensed software can only be used on one node. A node-locked license has a hostid on any FEATURE line that is node-locked to a particular host. There are two types of Node-locked licenses; uncounted and counted.
If the number of users is set to 0, then the licenses are uncounted and unlimited use is permitted on the specified node. This configuration does not require an lmgrd
daemon because it is not going to count the concurrent usage of the features.
Example
The following license file allows unlimited usage of feature "f1" on the nodes with host IDs of 12001234 and 1700ab12:
FEATURE f1 xyzd 1.000 1-jan-95 0 code1 "" 12001234
FEATURE f1 xyzd 1.000 1-jan-95 0 code2 "" 1700ab12
If these are the only FEATURE lines in this license file, an lmgrd
daemon is no necessary and you should not start one.
The following license file allows three copies of feature "f1" to be run, but only on the node with host ID 1300ab43. (In this case, run the daemons on the same node that runs the software.)
Concurrent usage with limited availability
Another solution is a combination of the node-locked solution in Node-locking and the concurrent option described inConcurrent (floating) usage . This provides a fixed number of floating licenses for use on a set of servers only you define when you request your license.
In this configuration, the license file has one node-locked FEATURE line for each node that is to be able to run the software. Generally, the same number of licenses is specified on each FEATURE line. This configuration requires anlmgrd
daemon because it counts the concurrent usage.
Example
For example, the following license file allows a total of two simultaneous licenses of a feature called, "f1" on any of the three nodes specified, with the daemons running on the license server "lulu":
FEATURE f1 xyzd 1.00 1-jan-93 2 code1 "" 17001234
Node-locked and concurrent usage
You can mix uncounted node-locked and concurrent usage licenses in the same license file.
Example
The following license file allows unlimited use of feature "f1" to be used on nodes 17001111 and 17002222, while allowing two other copies of feature "f1" to be run anywhere else on the network:
FEATURE f1 xyzd 1.00 1-jan-93 0 code1 "" 17001111
FEATURE f1 xyzd 1.00 1-jan-93 0 code2 "" 17002222
FEATURE f1 xyzd 1.00 1-jan-93 2 code3 ""
This configuration does require an lmgrd
daemon because it is going to count the concurrent usage of the two licenses on the third FEATURE line.