Overview of FLEX lm

This section explains the basics of floating (network) licensing, and gives a quick overview of the components of FLEX lm . It explains where system administrators have control and where end users have control. The section Getting Started Checklist describes how to start managing FLEX lm for both system administrators and end-users.

Introduction to FLEX lm

FLEX lm is a network license manager used by many software developers to control the use of their software products. FLEX lm allows software licenses to be available (float) anywhere on a network, instead of being tied to specific machines. Floating licensing benefits both users and system administrators. Users can make more efficient use of fewer licenses by sharing them on the network. System administrators can control who uses the licensed application, and the node(s) where the licenses will be available.

FLEX lm components

FLEX lm consists of the following four main components:

· License manager daemon

· Vendor daemon

· License file

· Application program

License Manager Daemon ( lmgrd )

The license manager daemon ( lmgrd ) handles the initial contact with the client application programs, and passes the connection on to the vendor daemon. It also starts and restarts the vendor daemons. FLEX lm permits multiple redundant license manager daemons on different server nodes, allowing you to make your license available only if any two out of three server nodes is running. The lmgrd eliminates the necessity of splitting your licenses among multiple servers or of relying on any one machine.

Vendor Daemon

In FLEX lm , licenses are handled by running processes. There is one process for each vendor who has a FLEX lm -licensed product on the network. This process is called the vendor daemon . The vendor daemon keeps track of how many licenses are checked out, and who has them. If the vendor daemon terminates for any reason, all users lose their licenses. Users normally regain their license when lmgrd restarts the vendor daemon.

Client programs communicate with the vendor daemon through TCP/IP or UDP/IP sockets. The client (where the application runs) and the daemon processes (the license server) can run on separate nodes on your network. Also, the traffic between the client and the license manager daemon is machine-independent, allowing for heterogeneous networks. This simply means the license server and the workstation running an application can be either different hardware platforms or different operating systems.

License File

Licensing data is stored in a text file called the license file. The license file is created by the system administrator. It contains information about the server nodes and vendor daemons, and at least one line of data (called a FEATURE line) for each licensed feature. Each FEATURE line contains an encryption code based on the data in that line, the hostids specified in the SERVER lines, and other vendor-specific data.

In some environments, the licensing information for several vendors may be combined into a single license file. The default location is:


Users can override this location by setting the environment variable LM_LICENSE_FILE to point elsewhere, or by following instructions supplied with the licensed application. If your site has software from multiple vendors with incompatible license files (due to different sets of servers), you can keep the data in separate files and set theLM_LICENSE_FILE variable to reference multiple files. For details, refer to License File .


The application program using FLEX lm is linked with the program module (called the FLEX lm client library) that provides the communication with the license manager daemon. During execution, the application program communicates with the vendor daemon to request a license.

License request process

When you run a FLEX lm -licensed application the following occurs:

1. The license module in the client application finds the license file, which includes the host name of the license server and port number of the license manager daemon, lmgrd .

2. The client establishes a connection with the license manager daemon ( lmgrd ) and tells it what vendor daemon it needs to talk to.

3. If the license server is a redundant server configuration, the lmgrd determines which machine and port correspond to the master vendor daemon and sends that information back to the client.

4. The client establishes a connection with the specified vendor daemon and sends its request for a license.

5. The vendor daemon checks in its memory to see if any licenses are available and sends a grant or denial back to the client.

6. The license module in the application grants or denies use of the feature, as appropriate.

Configuring FLEXlm

Most FLEXlm parameters can be configured by the system administrator. The following parameters can be set:

· Location of the license file

· Location of all executables

· Location of all log files

· TCP/IP port number used by the license manager process, lmgrd

Additionally, the system administrator can reserve licenses for specific users, nodes, or groups, and control other license-related options. See section Options File for more detailed information about changing parameters.

Note: Refer to your vendor's documentation before attempting to change file names locations, or contents.

Getting Started Checklist

This section provides a quick overview of how to set up and use licensing for FLEX lm -licensed products. By scanning the list, the system administrator should be able to quickly find the areas of interest. Cross-references point to more details in other parts of this manual.

Notes for system administrators

This section describes how to set up licensing on your system or network. If you are an end-user of the application, and you are not involved in the installation process, go to Notes for end users .

Note: The installation guide for your application software supersedes these instructions for installing and configuring FLEX lm .

General steps for installing FLEXlm

Generally, however, installing FLEX lm licensing requires the following steps:

1. Select your license server nodes and get their hostids.

2. Give the hostids to your software vendor and get a license file (or the data to enter in the license file) in return.

3. Determine how the new license file relates to any other license files that may already be on your system, and install it appropriately.

4. Determine if an options file is required or desired, and if so set it up.

5. Determine where to install the FLEX lm utility programs such as lmgrd , lmstat , and lmdown and install them.

6. Start lmgrd (the license daemon) manually; optionally, you may also want to set it up to start automatically at boot time.

The following sections briefly describe each step, including cross-references to more detailed sections.

License servers and hostids

Before running any FLEX lm -licensed program using floating licenses, you will need to set up your license server node (or nodes). You must select which node or nodes to run your license servers on, and provide the hostid of those machines to your software vendor. For pointers on selecting your server machine, see Selecting Server Nodes .

Obtain the hostid of the server machine by running FLEXlm's lmhostid utility on that machine. If you don't havelmhostid , you can obtain the hostid of your machine by using the appropriate command as described in Hostids for FLEXlm-Supported Machines .

After giving the hostid of your server machines to your software vendor, the vendor will send you a license file that enables their application software.

lmgrd and license files

Once you receive a license file from your vendor, you must install it on your system and startup the license manager daemon, lmgrd .

· If you have multiple FLEX lm -licensed products, avoid licensing conflicts. For more detailed information, see Combining License Files .

· Unless your software vendor selected a default location for your license file, you can use any location you wish. For more detailed information, see License File .

· Some vendors provide special scripts to start up the license daemon. If not, you can run the lmgrd program directly. To start lmgrd automatically at boot time, you must modify your system files. For more detailed information, see Specifying Location of the License File .

Administration tools

Globetrotter Software supplies administration tools to your software vendor. The vendor usually includes them with their product. The recommended location for the tools is /usr/local/bin , but you can install them in a different location (or not at all). See User Commands for more information.

Options files

The options file controls various options such as reservations and timeouts of licenses. Most users run without an options file, but you may decide you want to use some options. For example, many administrators use an option to limit the quantity and content of logged messages. To set up an options file, see Options File .

Notes for end users

As a user of a FLEX lm -licensed application, you must know how to:

· Specify to an application which license file to use.

· Query the system to find out who is using a license.

Specifying a license file

The license file determines what features are available to a program. It also contains information telling the application how to connect to the license server.

For information about the standard way of specifying a license file for an application, see License File .

Obtaining license information

To find out who is using a license run lmstat , as described in User Commands .