58 lines
1008 B
Bash
58 lines
1008 B
Bash
#!/bin/sh
|
|
#
|
|
# elemental-ircd startup script for Slackware
|
|
|
|
IRCD_USER="@IRCD_UNAME@"
|
|
|
|
# Don't edit PIDFILE ; it's set in configure by --with-rundir
|
|
PIDFILE=/var/run/elemental-ircd/ircd.pid
|
|
PID=$(cat $PIDFILE 2>/dev/null)
|
|
|
|
ircd_start() {
|
|
echo "Starting elemental-ircd."
|
|
mkdir -p $(dirname $PIDFILE)
|
|
chown $IRCD_USER:$IRCD_GROUP $(dirname $PIDFILE)
|
|
setpriv --reset-env --reuid $IRCD_USER /usr/bin/ircd
|
|
}
|
|
|
|
ircd_stop() {
|
|
echo -n "Stopping elemental-ircd..."
|
|
kill -TERM $PID 2>/dev/null
|
|
echo " done."
|
|
}
|
|
|
|
ircd_reload() {
|
|
echo -n "Sending signal to elemental-ircd to reload its configuration..."
|
|
if kill -CHLD $PID 2>/dev/null; then
|
|
kill -HUP $PID
|
|
echo " done."
|
|
else
|
|
echo "elemental-ircd doesn't seem to be running."
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
ircd_restart() {
|
|
ircd_stop
|
|
sleep 1
|
|
ircd_start
|
|
}
|
|
|
|
case "$1" in
|
|
start)
|
|
ircd_start
|
|
;;
|
|
stop)
|
|
ircd_stop
|
|
;;
|
|
restart)
|
|
ircd_restart
|
|
;;
|
|
reload)
|
|
ircd_reload
|
|
;;
|
|
*)
|
|
echo "Usage: $0 {start|stop|restart|reload}"
|
|
exit 1
|
|
esac
|