mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-14 21:56:41 +01:00
683caa309d
Signed-off-by: David Spencer <idlemoor@slackbuilds.org>
100 lines
1.4 KiB
Bash
100 lines
1.4 KiB
Bash
#!/bin/sh
|
|
|
|
# OpenLDAP Server start/stop script
|
|
|
|
|
|
. /etc/default/slapd
|
|
|
|
PID_FILE=/var/run/openldap/slapd.pid
|
|
EXEC=/usr/sbin/slapd
|
|
|
|
|
|
# re-create /var/run/openldap directory
|
|
if [ ! -d /var/run/openldap ]; then
|
|
mkdir -p /var/run/openldap
|
|
chown ldap:ldap /var/run/openldap
|
|
fi
|
|
|
|
|
|
slapd_start() {
|
|
|
|
echo -n "Starting OpenLDAP server..."
|
|
|
|
if [ -e $PID_FILE ]; then
|
|
|
|
if ps axc | grep slapd >/dev/null 2>&1 ; then
|
|
echo "already running!"
|
|
return 1
|
|
else
|
|
rm $PID_FILE
|
|
fi
|
|
|
|
fi
|
|
|
|
$EXEC -u ldap -h "$SLAPD_URLS" $SLAPD_OPTIONS > /dev/null 2>&1
|
|
echo "done!"
|
|
|
|
}
|
|
|
|
|
|
slapd_stop() {
|
|
|
|
echo -n "Stopping OpenLDAP server..."
|
|
|
|
if [ -e $PID_FILE ]; then
|
|
if ps axc | grep slapd >/dev/null 2>&1; then
|
|
kill -INT $(cat $PID_FILE)
|
|
else
|
|
echo "already stopped!"
|
|
fi
|
|
fi
|
|
|
|
rm $PID_FILE >/dev/null 2>&1
|
|
echo "done!"
|
|
|
|
}
|
|
|
|
|
|
slapd_restart() {
|
|
slapd_stop
|
|
sleep 1
|
|
slapd_start
|
|
}
|
|
|
|
|
|
slapd_status() {
|
|
|
|
if [ -e $PID_FILE ]; then
|
|
if ps axc | grep slapd >/dev/null 2>&1; then
|
|
echo "OpenLDAP is running!"
|
|
return 0
|
|
fi
|
|
|
|
echo "OpenLDAP PID file exists but the service is down!"
|
|
return 1
|
|
|
|
else
|
|
echo "OpenLDAP is stopped!"
|
|
return 0
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
case "$1" in
|
|
'start')
|
|
slapd_start
|
|
;;
|
|
'stop')
|
|
slapd_stop
|
|
;;
|
|
'restart')
|
|
slapd_restart
|
|
;;
|
|
'status')
|
|
slapd_status
|
|
;;
|
|
*)
|
|
echo "usage $0 start|stop|restart"
|
|
esac
|
|
|