]> git.pld-linux.org Git - packages/ejabberd.git/blob - ejabberd.init
f9f8055361695a02f7561ee7c6e05182034c1266
[packages/ejabberd.git] / ejabberd.init
1 #!/bin/sh
2 #
3 # ejabberd      Fault-tolerant distributed Jabber/XMPP server
4 #
5 # chkconfig:    345 99 01
6 #
7 # description:  Fault-tolerant distributed Jabber/XMPP server
8 #
9
10
11 # Source function library
12 . /etc/rc.d/init.d/functions
13
14 # Get service config - may override defaults
15 [ -f /etc/sysconfig/ejabberd ] && . /etc/sysconfig/ejabberd
16
17 # See how we were called.
18 case "$1" in
19   start)
20         # Check if the service is already running?
21         if [ ! -f /var/lock/subsys/ejabberd ]; then
22                 export ERL_MAX_PORTS ERL_FULLSWEEP_AFTER
23                 msg_starting ejabberd
24                 daemon /usr/sbin/ejabberd
25                 RETVAL=$?
26                 if [ $RETVAL -eq 0 ]; then
27                         touch /var/lock/subsys/ejabberd
28                 fi
29         else
30                 msg_already_running ejabberd
31                 exit 1
32         fi
33         ;;
34   stop)
35         # Stop daemons.
36         if [ -f /var/lock/subsys/ejabberd ]; then
37                 msg_stopping ejabberd
38                 /usr/sbin/ejabberdctl ejabberd@`hostname` stop 2>/dev/null
39                 RETVAL=$?
40                 if [ $RETVAL -eq 0 ]; then
41                     ok
42                 else
43                     fail
44                 fi
45                 rm -f /var/lock/subsys/ejabberd
46         else
47                 msg_not_running ejabberd
48                 exit 1
49         fi      
50         ;;
51   restart)
52         $0 stop
53         $0 start
54         ;;
55   reload)
56         if [ -f /var/lock/subsys/ejabberd ]; then
57                 msg_reloading ejabberd
58                 /usr/sbin/ejabberdctl ejabberd@`hostname` restart
59                 RETVAL=$?
60         else
61                 msg_not_running ejabberd
62                 RETVAL=1
63         fi
64         ;;
65   force-reload)
66         $0 stop && $0 start
67         ;;
68   status)
69         EPMDOUT=`/usr/lib/erlang/bin/epmd -names`
70         echo "$EPMDOUT" | head -n 1
71         echo "$EPMDOUT" | grep ejabberd
72         RETVAL=$?
73         if [ "$RETVAL" -ne "0" ] ; then
74                 if [ -f /var/lock/subsys/ejabberd ]; then
75                         nls "%s dead but subsys locked" "ejabberd"
76                         RETVAL=2
77                 else
78                         nls "%s is stopped" "ejabberd"
79                         RETVAL=3
80                 fi
81         fi
82         ;;
83   *)
84         msg_usage "$0 {start|stop|status|restart|reload|force-reload}"
85         exit 1
86 esac
87
88 exit $RETVAL
89
90 # This must be last line !
91 # vi:syntax=sh:tw=78:ts=8:sw=4
This page took 0.066788 seconds and 2 git commands to generate.