Problem Summary
There is a known issue with Ensim and RedHat Enterprise Linux version 4 (RHEL4) after running up2date -u, or from an automated OS update, that BIND can no longer start correctly or your programs start to die with segmentation fault errors. This is due to a glibc & bind update and the Ensim being incompatible with those updates.
This is because the Ensim installer hooks into system libraries using the LD_PRELOAD environment variable. An example is
in/etc/init.d/sshd:
export LD_PRELOAD=/lib/libensimvwhbw.so
which will cause sshd to not start.
Suggested changes
These suggestions only apply to Ensim < 10.x on RHEL4 systems.
- Fix the immediate issues (glibc and/or bind)
- Fix the problem from re-occuring by adjusting settings in up2date
Fixing glibc issues
Reinstall the glibc package with the following command
rpm -Uvh --force http://downloads.theplanet.com/rpms/compat-glibc-2.3.2-95.30.i386.rpm \
http://downloads.theplanet.com/rpms/compat-glibc-headers-2.3.2-95.30.i386.rpm \
http://downloads.theplanet.com/rpms/glibc-2.3.4-2.i386.rpm \
http://downloads.theplanet.com/rpms/glibc-devel-2.3.4-2.i386.rpm \
http://downloads.theplanet.com/rpms/glibc-headers-2.3.4-2.i386.rpm \
http://downloads.theplanet.com/rpms/glibc-kernheaders-2.4-9.1.87.i386.rpm \
http://downloads.theplanet.com/rpms/glibc-common-2.3.4-2.i386.rpm \
http://downloads.theplanet.com/rpms/glibc-utils-2.3.4-2.i386.rpm
Fixing BIND for Ensim
- Reinstall the following BIND packages with the following command
rpm -Uvh --force \
http://downloads.theplanet.com/rpms/bind-9.2.4-28.el4.i386.rpm \
http://downloads.theplanet.com/rpms/bind-devel-9.2.4-28.el4.i386.rpm \
http://downloads.theplanet.com/rpms/bind-libs-9.2.4-28.el4.i386.rpm - Reinstall the Ensim BIND rpm with the following command
rpm -Uvh --force http://downloads.theplanet.com/rpms/webppliance-bind-4.1.0-8.rhel.4ES.i386.rpm - Restart bind
service named restart
Preventing further updates to glibc and bind
- Choose one of the following methods:
- Manually edit
/etc/sysconfig/rhn/up2dateand make the changes suggested below
The pkgsToInstallNotUpdate should at least have these values
bind*;glibc*; - Run
up2date --configureand, when prompted type in 21 for the line number (should be pkgsToInstallNotUpdate or pkgsToInstallNotUp).
The pkgsToInstallNotUpdate should at least have these values
bind*;glibc*;
This will ensure that the packages are installable via up2date but will not update via automated updates or by manually running up2date. Note, that adding --force or -f to a manually invoked up2date command will in fact attempt to update all previously skipped packages.
