tjl2.com

A place to store useful stuff

Has anything here been really useful?


[ENSIM] CentOS 5 updates introduce new keyutils-libs RPM, breaking multiple services

After applying some recent updates to CentOS 5 Ensim Pro 10 servers, we started to receive error message emails from the MailQueueCleaner (MailQueueCleaner failure reports), which said the following:

domain.com: sendmail error, stdout: [], stderr: ['/usr/sbin/sendmail: error while loading shared libraries: libkeyutils.so.1: cannot open shared object file: No such file or directory\n'], exit code: 127

It turns out that recent updates to the krb5-libs package now require the installation of keyutils-libs as a dependency. Unfortunately, Ensim at this time is not set up to roll this package out to the virtual filesystems of individual sites, so various services (including virthostmail) fail, mentioning the libkeyutils.so file above.

To fix this problem, you will need to add a custom package script in the /etc/virtualhosting/filelists/ directory. I added a file called sendmail.custom.sh, which had the following contents:

#!/bin/bash
read
while [ $? == 0 ]; do
  echo $REPLY
  read
done
echo "S,rpm:keyutils-libs"

Create this file on your server, then run the system through maintenance to roll out the fix to all the virtual sites:

set_pre_maintenance && set_maintenance && set_post_maintenance

service epld start

While I fixed this by creating a sendmail.custom.sh file, I have seen that others have used apache.custom.sh. Either way seems to work and the naming of these files only seems to be used as a way to remember what service an RPM is required for. As this RPM affects several services, your custom.sh script could potentially use any name...