1

Getting below error during platform installation:

"Required libaio package is not found. ..."

However, above package is already installed:

rpm -q libaio
libaio-0.3.107-10.el6.x86_64

Here is output from the installation script:

./platform-setup-x64-linux-4.4.3.10393.sh
Unpacking JRE ...
Preparing JRE ...
Starting Installer ...
May 30, 2018 6:51:23 PM java.util.prefs.FileSystemPreferences$2 run
INFO: Created system preferences directory in java.home.
Verifying if the libaio package is installed. /opt/appdynamics/platform/installer/checkLibaio.sh
Davy Jones
  • 19
  • 3

1 Answers1

1

I got this too... I was running from command-line as a non-root user:

./platform-setup-x64-linux-4.4.3.10393.sh -q -varfile /appd/home/Install/response.varfile

I added the shell expand(-x) switch and log to the command(s) like so:

 bash -x ./platform-setup-x64-linux-4.4.3.10393.sh -q -varfile /appd/home/Install/response.varfile > install.log 2>&1

If we tail the last bit of that log you get, this response in debug mode:

Verifying if the libaio package is installed. /opt/appdynamics/platform/installer/checkLibaio.sh
Required libaio package is not found. For instructions on installing
the missing package, refer to https://docs.appdynamics.com/display/PRO44/Enterprise+Console+Requirements

and the script checkLibaio.sh isn't left there... so you cannot figure it out easily. I also have a RedHat variant with the packages installed:

rpm -qa | grep libaio
libaio-0.3.109-13.el7.x86_64

Strangely enough I have one VM from the same image that will install the distribution just fine, and one that will not, so on the broken install (where I really want to install this). I ran another command from the expanded view of the install.log, which was a really long JVM command line. Anyways I got it to work and then made a looping script to retrieve the file (Because AppD for some reason removes the check script before you can look at it). The script is as follows:

#!/bin/sh

# Script used to check if the machine has libaio on it or not. 

cat /dev/null > /opt/appdynamics/platform/installer/.libaio_status
chmod 777 /opt/appdynamics/platform/installer/.libaio_status

# Check if the dpkg or rpm command exists before running it.
command -v dpkg >/dev/null 2>&1
OUT=$?
if [ $OUT -eq 0 ];
then
    if [ `dpkg -l | grep -i libaio* | wc -l` -gt 0 ];
    then
        echo SUCCESS >> /opt/appdynamics/platform/installer/.libaio_status
        exit 0
    fi
else
    command -v rpm >/dev/null 2>&1
    OUT=$?
    if [ $OUT -eq 0 ];
    then
        if [ `rpm -qa | grep -i libaio* | wc -l` -gt 0 ];
        then
            echo SUCCESS >> /opt/appdynamics/platform/installer/.libaio_status
            exit 0
        fi
    fi
fi
echo FAILURE >> /opt/appdynamics/platform/installer/.libaio_status
exit 1

I you run this script like me on the faulty platform what you will discover is that your version of Linux has both:

dpkg

and

rpm 

installed. To work around this you should temporarily make a name change to one of these two package manager executables so it cannot be found (by your shell environment).

Most common here will be that you are running a RedHat variant where someone chose to install dpkg (For who knows what reason). If so desired remove that package and the install should be successful.