install.sh fails with 'gethostip: command not found' and  'gethostip -d <domainname> does not match hostname -i' errors installing RSA Identity Governance & Lifecycle
4 years ago
Originally Published: 2015-11-30
Article Number
000043337
Applies To
RSA Product Set: RSA Identity Governance & Lifecycle 
RSA Version/Condition: All
Platform:  Red Hat Enterprise Linux (RHEL)
Platform/Application Server: WildFly
 
Issue
The RSA Identity Governance & Lifecycle installation fails with the following errors:
 
# cd /tmp/aveksa/staging
# ./install.sh
.
.
.
Checking /etc/hosts file entry...
common.sh: line 508: gethostip: command not found 
gethostip -d <domainname> does not match hostname -i
Make sure <domain-name> is set to <ip-address> in your etc/hosts

#

 
Cause
The first error:
 
gethostip: command not found 
 
occurs because either:
  • the default location of the gethostip file, /usr/bin, is not in the root user's PATH environment variable, or
  • the command does not exist on the system because the Operating System (OS) package (syslinux) that contains the gethostip command is not installed.

The second error:
 
gethostip -d <domainname> does not match hostname -i
 
occurs as a result of the first error. Because the command is not found, no information is returned from the gethostip comand, so it cannot match any information returned by the hostname command regardless of whether the contents of the /etc/hosts file are correct or not. 


The most common reason for this error is that the syslinux package has not been installed. When installing an Operating Systems, not all packages are installed by default.
 
Resolution
If gethostip does NOT exist in /usr/bin, check to see if the Operating System (OS) package that contains the gethostip command, syslinux, has been installed.

If gethostip does exist in /usr/bin and /usr/bin is not defined in the PATH environment variable, then add /usr/bin to the PATH environment variable.   


EXAMPLES


If the below commands return no information, then corrective action must be taken. The examples show the information returned, when the Operating System is installed properly.
  1. Check to see if syslinux has been installed. As root, execute the following:
# rpm -qf /usr/bin/gethostip
syslinux-4.02-7.2.el5
If the above command returns no results, then install syslinux using a tool such as rpm or yum. The version of syslinux should be appropriate for the version of RHEL that has been installed. Examples of appropriate commands include the following:
yum install -y syslinux
or
rpm -Uvh <RH OS media location>/syslinux*
  1. Check to see if the gethostip file exists in /usr/bin, and if /usr/bin is defined in the PATH environment variable. As root, execute the following:
# ls -l  /usr/bin/gethostip
-rwxr-xr-x 1 root root 8728 Oct 15  2012 /usr/bin/gethostip

# echo $PATH
.:/u01/app/oracle/product/12.1.0/db_1/bin::/etc/alternatives/java_sdk_1.7.0/bin:
/usr/kerberos/sbin:/usr/kerberos/bin:/opt/ant/ant/bin:/usr/bin:/bin:/sbin:
/usr/sbin:/mnt/sysimage/bin:/mnt/sysimage/usr/bin:/mnt/sysimage/usr/sbin:
/mnt/sysimage/sbin:/mnt/sysimage/usr/X11R6/bin:/root/bin
If /usr/bin is not in the PATH environment variable, it can be added by running a command similar to this:
# export PATH = $PATH:/usr/bin