S50ejabberd 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #!/bin/sh
  2. #
  3. # Start/stop ejabberd
  4. #
  5. CTL=/usr/sbin/ejabberdctl
  6. DEFAULT=/etc/ejabberd/ejabberdctl.cfg
  7. INSTALLUSER=ejabberd
  8. RUNDIR=/var/run/ejabberd
  9. # Read default configuration file if present.
  10. [ -r "$DEFAULT" ] && . "$DEFAULT"
  11. # Create RUNDIR.
  12. mkrundir() {
  13. install -d -o "$INSTALLUSER" -g "$INSTALLUSER" "$RUNDIR"
  14. }
  15. case "$1" in
  16. start)
  17. mkrundir || exit 1
  18. printf "Starting ejabberd... "
  19. "$CTL" start
  20. # Wait until ejabberd is up and running.
  21. if "$CTL" started; then
  22. echo "done"
  23. else
  24. echo "failed"
  25. fi
  26. ;;
  27. stop)
  28. printf "Stopping ejabberd... "
  29. "$CTL" stop > /dev/null
  30. if [ $? -eq 3 ] || "$CTL" stopped; then
  31. echo "OK"
  32. else
  33. echo "failed"
  34. fi
  35. ;;
  36. status)
  37. "$CTL" status
  38. ;;
  39. restart|force-reload)
  40. "$0" stop || true
  41. "$0" start
  42. ;;
  43. live)
  44. mkrundir || exit 1
  45. "$CTL" live
  46. ;;
  47. *)
  48. echo "Usage: $0 {start|stop|status|restart|force-reload|live}"
  49. exit 1
  50. esac