Choosing the Flexnet server manager:

There are three types of the FlexNet server managers.

  • lmadmin – a web-based license server manager with GUI (recommended).
  • lmgrd – a license server manager with a command-line interface.
  • lmtools the old Windows based server manager (replaced by lmadmin).

 We recommend using lmadmin.

  • lmadmin installer comes only in 32 bit architecture (regardless of the version)
  • 11.12.1 version license server utilities (except lmadmin installer) come in 32/64 bit architectures
  • 11.14 version license tools are not available in 64 bit binaries only 32 bit tools are available (additional 32bit libraries need to be installed in the 64bit multi-arch system to execute them)

Prerequisites

  • You have the license owner account credentials.
  • If your operating system is Windows:

    To use lmadmin on Windows platforms, the Microsoft Visual C++ 2008 Redistributable Package (x86) must be

    installed. You have an option to install this package during the FlexNet Publisher License Server Installer process.

    • You can run lmadmin (11.12.1) on officially supported platforms:
      • Windows 8

      • Windows Server 2012

      • Windows Server 2008
      • Windows 7 (Ultimate)
      • Windows Vista (Ultimate)

    • You can run lmadmin (11.14) on officially supported platforms:
      • Windows 10

      • Windows Server 2008, including SP1, SP2, and R2

      • Windows 8
      • Windows 8.1
      • Windows 7, including SP1
      • Windows Server 2012 R2
      • Windows Server 2012

  • If your operating system is Linux:
    • For 32bit systems it is recommended to use 32bit lmadmin or 32 bit lmgrd
    • For 64 bit multi-arch systems it is recommended to use 32bit lmadmin and 64bit lmgrd
    • You have to have glibc libraries installed corresponding to your operating system architecture.
    • You have to create a non-root system user with root privileges and install/run the server tools using it:

      This can be achieved either by:

      1. Adding the user to the 'sudo' group

      2. Editing the file /etc/sudoers using visudo.

      Method 1 (Ubuntu based):

      sudo adduser newuser
      sudo usermod -aG sudo newuser

      Method 2 (Ubuntu based):

      Modify '/etc/sudoers' with the editor "visudo".
      
      #Create a user called "newuser"
      [root@mylinux~]#useradd newuser
      [root@mylinux~]#passwd newuser
      
      #Edit the file with visudo:
      [root@mylinux~]# visudo
      
      #Find a line 'User privilege specification' and add the following.
      newuser ALL=(ALL) ALL

      Method 1 (Redhat/Fedora/CentOS)

      sudo adduser newuser
      sudo passwd newuser
      sudo usermod -aG wheel newuser
    • If your operating system is 32 bit Linux:
      • It is recommended to use 32 bit lmadmin installer, or 32 bit lmgrd
      • You have to install the Linux Standard Base (LSB) library.

        For Ubuntu:

        sudo apt-get install lsb-core

        For Redhat/CentOS/Fedora:

        sudo yum install redhat-lsb-core
    • If your operating system is 64 bit Linux:
      • For version 11.12.1 we recommend either using the 32 bit lmadmin installer(for multi-arch systems), or the 64bit lmgrd.

        Installing 32 bit lmadmin on a multi-arch machine will require the 32bit libraries.

        For recent Ubuntu:

        sudo apt-get install libc6-i386
        apt-get update
        sudo apt-get install lsb-core

        For older Ubuntu use:

        sudo dpkg --add-architecture i386
        apt-get update
        sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
        sudo apt-get install lsb-core

        For Redhat/CentOS/Fedora:

        sudo yum install redhat-lsb-core.i686

        Running 64bit lmgrd on 64 bit systems requires 64 bit Linux Standard Base (LSB) library.

        For Ubuntu:

        sudo apt-get install lsb-core

        For Redhat/CentOS/Fedora:

        sudo yum install redhat-lsb-core
      • For version 11.14 we recommend either using the 32 bit lmadmin installer, or the 32bit lmgrd for multi-arch systems. 64 bit 11.14 lmadmin/lmgrd binaries are not available.

        Both of them require 32 bit librarires. Install it using:

        For recent Ubuntu:

        sudo apt-get install libc6-i386
        apt-get update
        sudo apt-get install lsb-cor

        For older Ubuntu:

        sudo dpkg --add-architecture i386
        apt-get update
        sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
        sudo apt-get install lsb-core

        For Redhat/CentOS/Fedora:

        sudo yum install redhat-lsb-core.i686

        lmadmin 11.14 comes with libssl.so.1.0.0 in its installation directory.
        You need to add these libraries in lmadmin directory to the LD_LIBRARY_PATH in order to run lmadmin.

        e.g. if your lmadmin installation is at /opt/FNPLicenseServerManager then adding it to the path would look like this:

        export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/FNPLicenseServerManager

    Check if LSB was installed successfully using:

    lsb_release -a

In order to query which lsb library is required for a particular Centos version, the following command can be executed:

sudo yum provides /lib/ld-lsb.so.3

It is a best practice to run license servers on a server based OS.

FlexNet License Administration Guide by Flexera Software, Inc

For more information about FlexNet, see the FlexNet License Administrator Guide.

Procedure

  1. Download the FlexNet server installer from our website.

    Log in with license owner credentials, if prompted.

  2. Install the server manager.

    We highly recommend running the FlexNet license server (lmadmin) as a service (on Windows) or a daemon (on OS X or Linux).

    As a result, the server can start automatically after the machine boots. Starting the server manually is not user-friendly – there is no GUI for this action.

    If your operating system is Windows, you only need to select the Run as a service check box when prompted during the lmadmin installation.

    Selecting to run the FlexNet license server as a Windows service

    For the instructions on how to create a daemon, refer to Automatic Start in License Administration Guide.

  3. Download the vendor daemon - Cameo from our website.
  4. Place the Vendor daemon into the FlexNet server installation folder. If you use lmadmin, do the following:

    1. Open the FlexNet server installation folder.

      For OS X and Linux users

      If you don't have permission to open the FlexNet server installation folder, execute the following command from the root:

      • On OS X
        chmod g+x FNPLicenseServerManager/
        chmod –R g+w ./*


      • On Linux

        chmod g+x FNPLicenseServerManager/
    2. In the open folder, create the licenses\cameo folder.
    3. Place the Vendor daemon in <FlexNet server installation folder>\licenses\cameo.

      Placing the Vendor daemon Cameo to the FlexNet installation folder

      Note that all files in FNPLicenseServerManager must have read/write permissions. lmadmin or cameo daemon may not start even if a log file or cameo daemon does not have r/w permissions.

      Use this command to set permissions for all files within the directory recursively.

      chmod -R 777 FNPLicenseServerManager

  5. Start the server by running the lmadmin file from the FlexNet server installation directory.

If you come across any issues while installing/running the software, please refer to the Troubleshooting section.

Other useful commands:

  • Find out the shared object dependencies in Linux. The result can show what files are missing libraries to run that file.
ldd <file_name>


  • File information in Linux
file <file_name>


  • Launching lmgrd manually via command line. lmgrd, cameo and license file must be in the same directory:
 lmgrd -c <license_file_name> -l <logfile_name>

   license_file_name - the path to the license file. Can use only the license file name if all files are in the same directory.

   logfile_name - the path to the log file. Can use only the license file name if all files are in the same directory. Make sure the files have read/write privileges.


  • Checking server status:
 lmutil lmstat -a -c <server_port>@<server_host_or_ip_address>

server_port - the port the server is operating on (Not the cameo daemon port)

server_host_or_ip_address - the host/address the server is hosted on

Prior to using the command, the download of lmutil from our website is required. Navigate to the file via the command line and then execute the command above.

Troubleshooting

JRE libraries are missing or not compatible

Error message while installing 32bit lmadmin on 64bit multi-arch Linux system.

The error message is misleading, the solution to fix it, is to install the 32bit libraries.


In Redhat/CentOS/Fedora:

sudo yum install redhat-lsb-core.i686

In recent Ubuntu use:

sudo apt-get install libc6-i386
apt-get update
sudo apt-get install lsb-core

In older Ubuntu use:

sudo dpkg --add-architecture i386
apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
sudo apt-get install lsb-core

No such file or directory running lmadmin

That may mean that you are missing the correct Linux Standard Base (LSB) library.

Also it may mean that you are using a 64bit executable in a 32bit system and vice versa.

Install the Linux Standard Base (LSB) libraries to fix it.

libssl.so.1.0.0 library required running lmadmin

lmadmin 11.14 comes with libssl.so.1.0.0 in its installation directory.
You need to add these libraries in lmadmin directory to the LD_LIBRARY_PATH.

e.g. if your lmadmin installation is at /opt/FNPLicenseServerManager then adding it to the path would look like this:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/FNPLicenseServerManager

lmadmin won't start

If you install lmadmin on a Linux-based system when logged on as root, you may encounter various issues. For example:

  •  When you try to launch the Web server (http://localhost:port) on the license server, you encounter an "Unable to connect" error.
  •  When you attempt to run the license server, you may encounter the following errors:
  10:43:19 (cameo) Vendor daemon can't talk to lmgrd (Cannot read data from license server system. (-16,287))
  10:43:20 (cameo) EXITING DUE TO SIGNAL 37 Exit reason 5

 
    In Web.log:

[08:08:08 2018] [warn] pid file /opt/FNPLicenseServerManager/logs/lmadmin.pid overwritten -- Unclean shutdown of previous Apache run?
[08:08:08 2018] [alert] getpwuid: couldn't determine user name from uid 4294967295, you probably need to modify the User directive
  •  A process listing for lmadmin ('ps aux | grep lmadmin') returns no results.
  •  A process listing for cameo ('ps aux|grep cameo') returns results if run right after lmadmin is started but then fails after a few seconds. If you view the cameo.log file in the logs directory (the default location is /opt/FNPLicenseServerManager/logs), you see that the process failed with the following error messages:
 07:55:17 (cameo) Report log started (cameo/report.log).
 07:55:27 (cameo) Vendor daemon can't talk to lmgrd (Cannot read data from license server system. (-16,287))
 07:55:27 (cameo) EXITING DUE TO SIGNAL 37 Exit reason 5


Therefore, when you are installing lmadmin on a Linux-based system, it is recommended that you avoid installing as root. If you have already installed lmadmin when logged on as root and you do not want to reinstall lmadmin, change the ownership of all of the files in the installed folder from root to another user

'Can't make directory' error running lmgrd

Can't make directory /usr/tmp/.flexlm, errno: 2(No such file or directory).


This means that directory /usr/tmp used by lmgrd is missing on your system(usually on Ubuntu systems). This error does not impact license checkout.

The solution to fix it is to create a symbolic link /usr/tmp pointing to /tmp:

ln -s /tmp /usr/tmp


You have no permission to install lmadmin in that directory

Make sure the lmadmin installer has read/write access.

chmod 777 lmadmin

or

chmod -R 777 folder_containing_lmadmin

to give read/write privileges to all files within a folder.


Then run lmadmin using sudo:

sudo ./<lmadmin_installer>

A sample script which performs the automated install of lmadmin in case you need it for reference purposes

A script is intended for CentOS and RedHat
#!/bin/bash
echo "==============="
echo "Installing wget"
echo "==============="
sudo yum install -y wget
echo "=================="
echo "Installing lmadmin"
echo "=================="
sudo getent group lmadmin >/dev/null || groupadd -r lmadmin
sudo getent passwd lmadmin >/dev/null || useradd -d /home/lmadmin -g lmadmin -m -r lmadmin
sudo yum install -y ld-linux.so.2
LSB=$(yum provides /lib/ld-lsb.so.3 | grep lsb-core | tail -1 | cut -f 1 -d ' ')
sudo yum install -y $LSB
sudo echo "lmadmin ALL=(ALL) NOPASSWD:ALL " >> /etc/sudoers
# If Web GUI to Flex licensing is not a must - lmgrd can be used, can be placed in rc.local to startup on boot
# usage - ./lmgrd -c PATH_TO_KEY_FILE -l PATH_TO_LOG_FILE
# RW rights needed to both files
echo "==========================================================="
echo "Getting Linux 32-bit IPv6 version 11.14 from AWS FrontCloud"
echo "==========================================================="
wget http://d1g91r27pzl568.cloudfront.net/Cameo_daemon/FlexNet_11_14/ipv6/linux/lnx_32/cameo
chmod +x cameo
echo "========================================"
echo "Getting Linux 32-bit lmgrd version 11.14"
echo "========================================"
wget https://d1oqhepk9od1tu.cloudfront.net/Flex_License_Server_Utilities/v11.14/linux32/lmgrd
chmod +x lmgrd
echo "======================================"
echo "Making flex log file named FlexLog.log"
echo "======================================"
touch FlexLog.log
chmod 664 FlexLog.log
echo "=========================================="
echo "Getting Linux 32-bit lmadmin version 11.14"
echo "=========================================="
wget https://d1oqhepk9od1tu.cloudfront.net/Flex_License_Server_Utilities/v11.14/linux32/lmadmin-i86_lsb-11_14_0_0.bin
chmod +x lmadmin-i86_lsb-11_14_0_0.bin
echo "========================================="
echo "Executing lmadmin version 11.14 installer"
echo "IMPORTANT: Install into directory /opt/local/FNPLicenseServerManager"
echo ""
echo " Note:  Accept all defaults for script to work properly!!!"
read -p -"Press any key to continue ...: " -n1 -s
echo "=========================================="
sudo ./lmadmin-i86_lsb-11_14_0_0.bin
sudo mkdir -p /opt/local/FNPLicenseServerManager/licenses/cameo/
sudo cp cameo /opt/local/FNPLicenseServerManager/cameo
sudo mv cameo /opt/local/FNPLicenseServerManager/licenses/cameo/cameo
sudo mv lmgrd /opt/local/FNPLicenseServerManager/lmgrd
sudo mv FlexLog.log /opt/local/FNPLicenseServerManager/FlexLog.log
sudo chown -R lmadmin:lmadmin /opt/local/FNPLicenseServerManager/
sudo chmod +x /opt/local/FNPLicenseServerManager/lib*
sudo cp /opt/local/FNPLicenseServerManager/lib* /usr/lib/
echo "======================"
echo "Opening firewall ports"
echo "======================"
FWZONE=$(sudo firewall-cmd --get-default-zone)
cat <<EOF | sudo tee /etc/firewalld/services/lmadmin.xml
<?xml version="1.0" encoding="utf-8"?>
<service version="1.0">
    <short>lmadmin</short>
    <description>lmadmin</description>
    <port port="8090" protocol="tcp"/>
    <port port="1101" protocol="tcp"/>
</service>
EOF
sleep 5
sudo firewall-cmd --zone=public --remove-port=8090/tcp --permanent
sudo firewall-cmd --zone=public --remove-port=1101/tcp --permanent
sudo firewall-cmd --zone=public --remove-port=27000-27009/tcp --permanent
sudo firewall-cmd --zone=internal --remove-port=8090/tcp --permanent
sudo firewall-cmd --zone=internal --remove-port=1101/tcp --permanent
sudo firewall-cmd --zone=internal --remove-port=27000-27009/tcp --permanent
sudo firewall-cmd --zone=$FWZONE --add-service=lmadmin --permanent
sudo firewall-cmd --reload
IP_ADDRESS=$(ip route get 1 | awk '{print $NF;exit}')
HOSTNAME=$(hostname)
echo "$IP_ADDRESS     $HOSTNAME" >> /etc/hosts 
echo "=========================================="
echo "Creating systemd service - lmadmin"
echo "=========================================="
sudo echo "[Unit]" > /etc/systemd/system/lmadmin.service
sudo echo "Description=Flexnet License Daemon" >> /etc/systemd/system/lmadmin.service
sudo echo "After=network.target network.service" >> /etc/systemd/system/lmadmin.service
sudo echo "" >> /etc/systemd/system/lmadmin.service
sudo echo "[Service]" >> /etc/systemd/system/lmadmin.service
sudo echo "User=lmadmin" >> /etc/systemd/system/lmadmin.service
sudo echo "WorkingDirectory=/opt/local/FNPLicenseServerManager/" >> /etc/systemd/system/lmadmin.service
sudo echo "ExecStart=/opt/local/FNPLicenseServerManager/lmadmin -allowStopServer yes" >> /etc/systemd/system/lmadmin.service
sudo echo "Restart=always" >> /etc/systemd/system/lmadmin.service
sudo echo "RestartSec=30" >> /etc/systemd/system/lmadmin.service
sudo echo "Type=forking" >> /etc/systemd/system/lmadmin.service
sudo echo "" >> /etc/systemd/system/lmadmin.service
sudo echo "[Install]" >> /etc/systemd/system/lmadmin.service
sudo echo "WantedBy=multi-user.target" >> /etc/systemd/system/lmadmin.service
sudo echo "" >> /etc/systemd/system/lmadmin.service
sudo chown root:root /etc/systemd/system/lmadmin.service
sudo chmod 755 /etc/systemd/system/lmadmin.service
sudo systemctl daemon-reload
sudo systemctl enable lmadmin.service
echo "=========================================="
echo "lmadmin service installation complete"
echo "  usage: systemctl start|stop lmadmin"
echo "=========================================="




If you run into any further problems with installation, please try: