LabCollector Linux Requirements & Installation - LabCollector

Search Knowledge Base by Keyword

LabCollector Linux Requirements & Installation

You are here:
← All Topics
LabCollector is a server software developed in PHP scripting language. It is designed to be accessed and shared over a network. Install it once on a central computer (server) and call it from an Internet Browser: Internet Explorer 10 or later, Firefox 20 or later, Chrome, and Opera 9.
We highly recommend you to use the most recent browsers.
Follow the below steps for LINUX installations:-
1. LabCollector LINUX requirements
2. Download the installation pack
3. Unpacking & Uploading the files
4. Loader Installation by PHP.INI modification
5. Loader Installation for Runtime loading
6. Changes in PHP.INI & Installation
7. PHP extensions
8. Mysql requirements
9. Logging in LabCollector

1. LabCollector LINUX requirements

  • Linux (any recent distribution)
  • Apache 2.4.x
  • PHP 7.4 and PHP 8.1 (PHP 5.6 to 7.4 only for legacy versions)
  • MYSQL or equivalent (MariaDB, PerconaDB)
  • 4cpu cores
  • 8Gb RAM

Libraries/packages (names may vary depending on distribution):

  • PHP-mysql, PHP-mcrypt, PHP-xml, PHP-zip, PHP-Curl, PHP-OpenSSL, PHP-LDAP…

Additional software:

  • Curl
  • OpenSSL
  • Mono (optional)
  • Webmin (optional)
  • Perl (CGI and other packages needed for webmin)

AgileBio software

  • LabCollector Webmin module  (*Contact Us if you wish to install & use this tool)

2. Download the installation pack

  • From your client area, download the installation pack that suits your need.
  • More information on the client area, here.
Requirements: Have access by FTP to a web server account or work directly on the web server itself.

3. Unpacking & Uploading the files

  • Unpack the ZIP package on a computer or on the server.
  • Upload or copy files contained in the HTML folder to the correct web-accessible folder (in BINARY FORMAT). NOTE: Be sure the folder has written permissions, at least for install purposes. You can remove this permission once install is finished.
  • Do a chmod 777 on the following folders: /backup, /documents, /temp, /maps
    *(Setting 777 permissions to a file or directory means that it will be readable, writable, and executable)

    4. Loader Installation by PHP.INI modification

    • Execute from your Internet browser: launch the Loader Wizard script in your browser. (
    • For example http://localhost/ioncube/loader-wizard.php and follow loader install instructions.
    • Restart your webserver.

    5. Loader Installation for Runtime loading

    • Nothing has to be done.
    • Loaders are located automatically inside the IonCube folder that you must keep in the LabCollector folder.

    6. Changes in PHP.INI

    • Insure you of these parameters:
      – error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED
      – short_open_tag = On
    • Run from the browser a file install.php (you need first to install loaders. (Read above sections 4 & 5.)
    • Fill in the information asked and press the ‘Next’ button (MySQL login by default is root with no password)

    You have possibility to modify certain variables (mentioned below), which can be useful if you have specific requirements that are not met by the default values. Simply access the php.ini configuration file and make the necessary changes.

    1. max_input_vars : This configuration variable specifies the maximum number of input variables that can be accepted by PHP, it can be increased as needed (for example max_input_vars = 100000000).
    2. pcre.recursion_limit : This variable sets the maximum amount of stack memory that can be used by PHP’s PCRE (Perl Compatible Regular Expression) engine, it can be increased if needed (for example pcre.recursion_limit = 10000000).
    3. max_execution_time : This variable determines the maximum amount of time (in seconds) that a PHP script can run before being terminated. The default value of this variable is usually set to 30 seconds, but it can be increased as needed (for example max_execution_time = 120).
    4. max_input_time : This variable determines the maximum amount of time (in seconds) that PHP will spend on input processing before timing out. The default value of this variable is usually set to 60 seconds, but it can be increased as needed (for example max_input_time = 360).
    5. memory_limit : This variable sets the maximum amount of memory (in bytes) that a PHP script can use. The default value of this variable is usually set to 128MB, but it can be increased as needed (for example memory_limit = 1024M).
    Be Careful note
    It’s important to note that modifying these PHP variables without proper understanding and testing can have adverse effects on the performance and stability of LabCollector. So, it’s recommended that you seek the advice of experienced developers or server administrators before making any changes.

    7. PHP extensions

    NOTE: Be careful that you NEED to have these PHP extensions installed on your server:

    • php-mysql (up to PHP5.6.x)
    • php-mysqli (from PHP7.x)
    • php-pdo
    • php-xml
    • php-gd
    • php_mbstring
    • php-ldap (this one is optional, in case you want to use LDAP as login authentication)

    8. Mysql requirements

    In my.cnf,

    • Insure you have set these parameters:
      • character_set_server = latin1
        collation_server = latin1_swedish_ci
    • Other settings for MYSQL 8+
      • The following setup is needed for MYSQL 8+
      • default-authentication-plugin=mysql_native_password
      • Once active, please redefined MYSQL user passwords
      • Find the sql-mode line definition in my.cnf/my.ini and keep it like indicated below. If the sql-mode line does not exist, please add this way:
      • sql-mode="NO_ENGINE_SUBSTITUTION"
      • This variable has to be set as 0
      • SET PERSIST information_schema_stats_expiry = 0
    • Other settings for (including AWS server)
      • You need to set MYSQL 8 to have: Binary Logging Enabled
          • The following setup is needed:

        SET GLOBAL log_bin_trust_function_creators=1;

    • Install MySQL/MariaDB tools, such as mysqldump, which is a utility for creating backups of MySQL databases.


    More requirements for MySQL Configuration:

    *Check out our KB on LabCollector’s AWS requirements & installation

    • if you are hosting MySQL on localhost, you will need to apply a configuration to the /etc/my.cnf file. Specifically, you should set the “innodb_strict_mode” parameter to 0. This can be done by adding the following line to the my.cnf file:innodb_strict_mode=0After making this change, you need to restart the MySQL.

    9. Logging in LabCollector

        • Access it by calling it from a web browser, usually by writing the network name of the server computer.
        • This can be done from any computer connected to the local network.
        • After the first installation, by default super-administrator access to LabCollector using:
          login: admin and password: admin
        • You can then change the password and add more user logins.  (In LabCollector go to ADMIN -> MANAGE USERS)

    Related topics: