|Applies To||RSA Product Set: Identity Management and Governance (IMG), Via Lifecycle & Governance (L&G)|
RSA Version/Condition: 6.9.1, 7.0.0
Platform (Other): Soft-appliance
O/S Version: Red Hat Enterprise Linux 6.x
|Issue||An error, as shown in the terminal output snippet below, is seen during execution of install.sh on software appliance, using RedHat Linux 6.x OS.|
# cd /tmp/aveksa/staging
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 reason gethostip is not found is either because it's default location of /usr/bin is not in the (root) users PATH environment variable definition or because the command does not exist on the system because the OS package (syslinux) that contains this command is not installed on this environment.|
The second error 'gethostip -d' output does not match 'hostname -i' output, is not because the hostname is not correct in /etc/hosts. In this specific case, this error is a result of no information being returned by the gethostip command - which of course does not match the information that IS returned by the hostname command.
|Resolution||This problem only occurs on software appliances where the Customer needs to build out the OS. Not all packages are installed by default. The most common reason for this error is #1 shown below - the syslinux package has not been installed.|
The examples below show when the gethostip command is found, is in $PATH and has been installed as part of the syslinux package.
If either of these commands return no information, then corrective action must be taken.
1. Check to see if the OS package that contains is (syslinux) has been installed.
# rpm -qf /usr/bin/gethostip
If it has not been installed, then the syslinux package must be installed, using a tool such as rpm or yum. The version of syslinux should be appropriate for the version of RedHat that has been installed. Appropriate commands would include the following:
yum install -y syslinux
rpm -Uvh <RH OS media location>/syslinux*
2. Check to see if the file exists in /usr/bin, and if /usr/bin is in the $PATH environment variable.
# ls -l /usr/bin/gethostip
-rwxr-xr-x 1 root root 8728 Oct 15 2012 /usr/bin/gethostip
# echo $PATH
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