PREIN
/bin/sh
if [ -n "`/usr/bin/getgid slapd`" ]; then
if [ "`/usr/bin/getgid slapd`" != "93" ]; then
echo "Error: group slapd doesn't have gid=93. Correct this before installing openldap-servers." 1>&2
exit 1
fi
else
echo "Adding group slapd GID=93."
/usr/sbin/groupadd -g 93 -r slapd 1>&2 || exit $?
[ ! -x /usr/sbin/nscd ] || /usr/sbin/nscd -i group || :
fi;
if [ -n "`/bin/id -u slapd 2>/dev/null`" ]; then
if [ "`/bin/id -u slapd`" != "93" ]; then
echo "Error: user slapd doesn't have uid=93. Correct this before installing openldap-servers." 1>&2
exit 1
fi
else
echo "Adding user slapd UID=93."
/usr/sbin/useradd \
\
-u 93 \
-r \
-d /var/lib/openldap-data \
-s /bin/false \
-c "OpenLDAP server"\
-g slapd \
\
\
slapd 1>&2 || exit $?
[ ! -x /usr/sbin/nscd ] || /usr/sbin/nscd -i passwd || :
fi;
PREUN
/bin/sh
if [ "$1" = "0" ] ; then
{
if [ -f /var/lock/subsys/ldap ]; then
/sbin/service ldap stop 1>&2 || :;
fi }; /sbin/chkconfig --del ldap || :
fi
POSTIN
/bin/sh
/sbin/chkconfig --add ldap
# minimizing restarts logics. we restart server:
#
# 1. at the end of transaction. (posttrans, feature from rpm 4.4.2)
# 2. first install of module (post: $1 == 1)
# 2. uninstall of module (postun: $1 == 0)
#
# the strict internal deps between modules and
# server package are very important for all this to work.
POSTUN
/bin/sh
if [ "$1" = "0" ]; then
/usr/lib/rpm/user_group.sh user del slapd
/usr/lib/rpm/user_group.sh group del slapd
fi
POSTTRANS
/bin/sh
{
skip_auto_restart() {
[ -f /etc/sysconfig/rpm ] && . /etc/sysconfig/rpm
[ -f /etc/sysconfig/ldap ] && . /etc/sysconfig/ldap
echo ${RPM_SKIP_AUTO_RESTART:-no}
};
if [ $(skip_auto_restart) = no ]; then
if [ -f /var/lock/subsys/ldap ]; then
/sbin/service ldap restart 1>&2 || :;
else
echo 'Run "/sbin/service ldap start" to start OpenLDAP server.'
fi
fi };
Triggers
openldap-servers <
2.1.12
/bin/sh
if [ "`/usr/bin/getent passwd slapd | cut -d: -f6`" = "/var/lib/openldap-ldbm" ]; then
/usr/sbin/usermod -d /var/lib/openldap-data slapd
fi