Powered by Zoomin Software. For more details please contactZoomin

Install Semaphore on Linux

Install the Classification and Language Services

Install the Classification and Language Services

  • Last Updated: May 13, 2026
  • 3 minute read
    • Semaphore
    • Documentation

The Classification and Language Service is used to provide classification facilities for applications. The application analyzes submitted text and returns categories from a particular model (classification scheme) for which the document is appropriate. 

Important: For Semaphore 5.10.2, a new NLP processor was introduced that works by default when no language packs are installed. However, the results from this configuration are likely to produce different results from an installation using language packs. Therefore, to ensure consistent results when upgrading, continue using the same language packs as earlier installations. If you are starting a new project, installing Semaphore without language packs provides is sufficient in most scenarios.

Note: If you are not using language packs, you do not need to install Java or configure the SEMAPHORE_JVM_LIB parameter.

The command to install the Classification Server is

yum install Semaphore-ClassificationServer-<Version>.x86_64.rpm

Configure Language Packs

If you are using language packs to support the classification process, you must install the Base language pack and at least one other language pack.

If you are using language packs, perform the following on the server hosting the Classification and Language Services:

  1. Install the base language pack by running the following command:

    yum install Semaphore-LanguagePack-Linux-Base-<Version>.rpm
    
  2. Install each of the purchased language specific packs. For example, execute a command that takes the following form:

    yum install Semaphore-LanguagePack-Linux-<Language>-<Version>.rpm
    

Before starting the Classification Server, you must add a SEMAPHORE_JVM_LIB setting to the /etc/sysconfig/semaphore-cs file. This tells Classification Server where the Java Virtual Machine library used for the language packs can be found. The setting needs to be the full path name; therefore, a simple way to find this is from the following command prompt type (the stderr redirection eliminates warnings from the response):

find -L / -name libjvm.so 2\> /dev/null

Next, specify the returned file path for the SEMAPHORE_JVM_LIB value. For example, SEMAPHORE_JVM_LIB=/full/path/to/the/libjvm.so. Note that we recommend specifying a soft link to the JVM library to avoid potential issues on subsequent updates to the JDK software. Refer to How do you change the JDK version for Semaphore after installation? in the Semaphore for Linux Administration for more information.

If you experience issues starting the Classification Server, refer to Issue - Classification Server with Language Packs installed fails to start in the Semaphore for Linux Administration.

Note: Before you can start Classification Server for the first time you will need to install a licence key, refer to Installing the licence key for details.

Configure the Classification Server

The Classification Server (CS) processes requests sent by client applications (such as Semaphore for SharePoint solutions) and classifies the content of the request against a set of rules stored on the server. The resulting classification information is then returned to the requesting application.

The Classification Server configuration file is named config.xml by default and found in the /etc/opt/semaphore/CS/conf/ directory. Other configuration files may be used by specifying them via start-up parameters for Classification Server; however, we recommend using the typical name for easier maintenance.

For details of the settings in this file see Configure the Classification and Language Service (CLS)

For any settings changes to take effect, you must restart the server:

  1. Login to the installation server as an administrator

  2. Stop the semaphore-cs service by executing the following command:

    systemctl stop semaphore-cs
    
  3. Edit the configuration file with your changes at the following location:

    /etc/opt/semaphore/[CS]{.underline}/conf/config.xml
    
  4. Save the changes on the configuration file

  5. Restart the semaphore-cs service by executing the following command:

    systemctl start semaphore-cs
    

How to make Classification Server accessible from outside the installation server

By default, port 5059 (Admin server interface) of Classification Server is accessible only in the localhost, even if you open this port in your server firewall. This section discusses how to make Classification Server accessible to an outside server/machine.

To allow the Classification Server to be accessible outside of localhost:

  1. Login to the server hosting CLS as an administrator.

  2. Stop the semaphore-cs service by executing the following command:

    systemctl stop semaphore-cs
    
  3. Open the configuration file, which is typically stored in the following location:

    /etc/opt/semaphore/CS/conf/config.xml
    
  4. Search for either 5058 or 5059, depending on which port you want to modify.

  5. Under the only_accept_ip property for your port, add the IP address where you want Classification Server to be accessible. Alternatively, comment out the only_accept_ip property section to allow the Classification Server to be accessible anywhere in the network

  6. Save the changes to the configuration file.

  7. Restart the semaphore-cs service executing the following command:

    systemctl start semaphore-cs
    

Next steps

Install the Semantic Enhancement Server

TitleResults for “How to create a CRG?”Also Available inAlert