Unpacking self-extracting (.sfx) files on 64bit Linux systems fails with the error: No such file or directory
search cancel

Unpacking self-extracting (.sfx) files on 64bit Linux systems fails with the error: No such file or directory

book

Article ID: 342402

calendar_today

Updated On:

Products

VMware

Issue/Introduction

The vFabric Enterprise Ready Server (ERS) or vFabric Web Server installation document provides information on the modified directions for installation on an operating system with only 64bit libraries. This article diagnoses the problems you may encounter when attempting the standard installation method.

Symptoms:
  • Cannot unpack self extracting (.sfx) files in 64bit Linux systems
  • Unpacking .sfx files in Linux systems fails
  • You see errors similar to:
    • $ ./ers-4.0.3-apache-2.2.17-x86-linux-glibc2.zip.sfx
      -bash: ./ers-4.0.3-apache-2.2.17-x86-linux-glibc2.zip.sfx: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
    • $ ./vfabric-web-server-5.0.0-22-i686-linux-glibc2.zip.sfx
      -bash: ./vfabric-web-server-5.0.0-22-i686-linux-glibc2.zip.sfx: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

  • In Ubuntu, you see the error:

    -bash: ./vfabric-web-server-5.0.0-22-i686-linux-glibc2.zip.sfx: No such file or directory


  • Running the ERS fixrootpath.pl script fails with the error:

    /opt/ERS/php5.2/lib/php/peclcmd.php
    sh: /opt/ERS/php5.2/bin/php5.2: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory


Environment

VMware vFabric Enterprise Ready Server 4
VMware vFabric Web Server 5.0

Cause

You experience this issue because the self-extracting executable relies on 32bit glibc2 libraries that are not available in recent Linux distributions.
According to the installation documentation, the product is packaged in 32bit self-extracting executables. The packaging for Linux assumes that the 32bit glibc2 libraries are available. Earlier 64bit Linux distributions, by default, installed 32bit libraries to maintain compatibility. However, recent distributions such as RHEL 6, CentOS 6, and Ubuntu 11 have stopped installing the 32bit libraries on 64bit installations.

Resolution

To resolve this issue, use a tool to unzip the file. In RHEL 6, you can use the unzip command.
If your distribution dooes not include an unzip tool, you may have to download and install an unzip utility. To download the UnZip utility, see http://www.info-zip.org/UnZip.html.
Note: The preceding link was correct as of February 08, 2012. If you find the link is broken, provide feedback and a VMware employee will update the link.

In vFabric ERS, you may see that the fixrootpath.pl script fails for PHP components with a similar error. You can ignore this error, if you do not want PHP.
To resolve this issue when you want PHP, use your operating system's packaging system to install the 32bit glibc packages and dependencies (these are available, but are not installed by default), and then run the fixrootpath.pl script.
To install the 32bit glibc package in RHEL 6/CentOS 6, run this command:

yum install glibc.i686

To install the 32bit glibc package in Ubuntu 11, run this command:
sudo apt-get install libc6:i386