Skip to main content

Linux Agent | Installation Fails On Rhel 6 & Rhel 7

Updated over a week ago

Overview πŸ’₯

When attempting to install the Liongard Linux Agent on Red Hat Enterprise Linux (RHEL) 6 or RHEL 7 systems, the installation may fail immediately after the installer extracts successfully. This behavior is consistent across multiple hosts and is not related to incorrect installation steps, network access, or corrupted installer packages.

This article explains why the failure occurs, how it can be proven, and what the supported resolution paths are, based on runtime evidence from the operating system.


Symptoms πŸ€’

During installation, the following behavior is observed:

  • The installer downloads successfully

  • Integrity checks complete successfully (SHA256 / MD5)

  • The installer extracts without error

  • Installation fails when the agent attempts to start

✨ Typical errors include:

./node/bin/node: /lib64/libc.so.6: version `GLIBC_2.25' not found ./node/bin/node: /lib64/libc.so.6: version `GLIBC_2.27' not found ./node/bin/node: /lib64/libc.so.6: version `GLIBC_2.28' not found ./node/bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found ./node/bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found ./node/bin/node: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found

✨ Reference


Why Does This Happen? πŸ€”

βœ… Bundled Node.js Runtime

The Liongard Linux Agent bundles its own Node.js runtime, which is used to execute the agent services. This runtime is included with the agent and does not rely on a system-installed Node.js version.

βœ… Runtime Dependency Enforcement

The bundled Node.js binary is dynamically linked against system libraries provided by the operating system, including:

  • GLIBC (GNU C Library)

  • libstdc++ (C++ standard library)

  • C++ ABI (CXXABI)

When the installer completes extraction and attempts to start the agent, the Linux dynamic linker (ld-linux) checks whether the required symbol versions are available on the system.

If the required symbol versions are not present, the operating system refuses to execute the binary and reports the missing symbols.


Proof of Incompatibility 🀨

The error messages shown during installation are generated directly by the Linux runtime linker. They explicitly list the symbol versions required by the bundled Node.js binary, including:

Library

Missing Symbols

GLIBC

GLIBC_2.25, GLIBC_2.27, GLIBC_2.28

libstdc++

GLIBCXX_3.4.20, GLIBCXX_3.4.21

C++ ABI

CXXABI_1.3.9

These symbols are hard runtime requirements of the binary. They are not inferred or assumed β€” they are reported by the operating system when execution is attempted.

If these symbols were present on the system, the Node.js binary would start successfully. Since they are not, the OS correctly blocks execution.


Why This Fails on RHEL 6 and RHEL 7 🧐

Operating System

Default GLIBC Version

RHEL 6

2.12

RHEL 7

2.17

The Liongard agent’s bundled Node.js runtime is linked against symbol versions that are only provided by platforms in the GLIBC 2.28+ family (for example, RHEL/Rocky/Alma 8+).

Because GLIBC is a core operating system component, it cannot be safely upgraded in-place on RHEL 6 or RHEL 7. Attempting to do so is unsupported and risks breaking system-level binaries.

As a result, this incompatibility is definitive and cannot be resolved through:

  • Reinstallation

  • Configuration changes

  • Network allowlisting

  • Permissions adjustments

πŸ“š Reference Doc:

‼️ Disclaimer

We may reference external third-party resources solely as additional guidance.

Liongard does not own, control, or guarantee the accuracy, security, or reliability of third-party sites. Please use them at your own discretion and risk.


Supported Path Forward πŸš€

To successfully deploy the Liongard Linux Agent, the operating system must be upgraded to a supported, modern platform that includes the required runtime libraries.

Supported examples include:

  • RHEL 8 or RHEL 9

  • Rocky Linux 8 or 9

  • AlmaLinux 8 or 9

  • Ubuntu 18.04 or newer

  • Amazon Linux 2

These platforms include:

  • GLIBC 2.28 or newer

  • Compatible libstdc++ and C++ ABI versions


Steps to Resolve πŸ§‘β€πŸ«

  1. Identify systems running RHEL 6 or RHEL 7

  2. Plan an operating system upgrade to a supported platform

  3. Reattempt Liongard Linux Agent installation after the upgrade

  4. Validate successful agent registration and check-in


When to Contact Support 🦁

Contact Liongard Support if:

  • The agent fails to install on a supported OS version listed above

  • GLIBC-related errors occur on a system with GLIBC 2.28 or newer

  • Additional validation is required for environment-specific constraints

Include the following when contacting support:

  • OS version and distribution

  • Full installation output

  • Agent installer version


Disclaimer πŸ™Œ


Summary 🌟

The Liongard Linux Agent installation failures on RHEL 6 and RHEL 7 are caused by runtime library incompatibility, not installation errors. The bundled Node.js runtime requires GLIBC and C++ symbol versions that these operating systems do not provide. An operating system upgrade is required to proceed with a supported deployment.

Did this answer your question?