You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

rspamd.init 2.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. #!/bin/sh
  2. #
  3. # rspamd - this script starts and stops the rspamd daemon
  4. ### BEGIN INIT INFO
  5. # Provides: rspamd
  6. # Required-Start: $remote_fs $network
  7. # Required-Stop: $network $remote_fs
  8. # Default-Start: 5
  9. # Default-Stop:
  10. # Short-Description: Rspamd daemon
  11. # Description: Rspamd spam filtering daemon process
  12. ### END INIT INFO
  13. #
  14. # chkconfig: - 85 15
  15. # description: rspamd is a spam filtering system
  16. # processname: rspamd
  17. # config: /etc/rspamd/rspamd.sysvinit.conf
  18. # config: /etc/sysconfig/rspamd
  19. # pidfile: /var/run/rspamd/rspamd.pid
  20. # Source function library.
  21. . /etc/rc.d/init.d/functions
  22. # Source networking configuration.
  23. . /etc/sysconfig/network
  24. # Check that networking is up.
  25. [ "$NETWORKING" = "no" ] && exit 0
  26. rspamd="/usr/bin/rspamd"
  27. rspamadm="/usr/bin/rspamadm"
  28. prog=$(basename $rspamd)
  29. RSPAMD_CONF_FILE="/etc/rspamd/rspamd.sysvinit.conf"
  30. RSPAMD_USER="_rspamd"
  31. RSPAMD_GROUP="_rspamd"
  32. [ -f /etc/sysconfig/rspamd ] && . /etc/sysconfig/rspamd
  33. lockfile=/var/lock/subsys/rspamd
  34. start() {
  35. [ -x $rspamd ] || exit 5
  36. [ -f $rspamd_CONF_FILE ] || exit 6
  37. echo -n $"Starting $prog: "
  38. daemon $rspamd -c $RSPAMD_CONF_FILE -u $RSPAMD_USER -g $RSPAMD_GROUP
  39. retval=$?
  40. echo
  41. [ $retval -eq 0 ] && touch $lockfile
  42. return $retval
  43. }
  44. stop() {
  45. echo -n $"Stopping $prog: "
  46. killproc $prog -TERM
  47. retval=$?
  48. if [ $retval -eq 0 ]; then
  49. if [ "$CONSOLETYPE" != "serial" ]; then
  50. echo -en "\\033[16G"
  51. fi
  52. while rh_status_q
  53. do
  54. sleep 1
  55. echo -n $"."
  56. done
  57. rm -f $lockfile
  58. fi
  59. echo
  60. return $retval
  61. }
  62. restart() {
  63. configtest || return $?
  64. stop
  65. start
  66. }
  67. reload() {
  68. configtest || return $?
  69. echo -n $"Reloading $prog: "
  70. killproc $rspamd -HUP
  71. RETVAL=$?
  72. echo
  73. }
  74. force_reload() {
  75. restart
  76. }
  77. configtest() {
  78. $rspamadm configtest -c $RSPAMD_CONF_FILE
  79. }
  80. rh_status() {
  81. status $prog
  82. }
  83. rh_status_q() {
  84. rh_status >/dev/null 2>&1
  85. }
  86. case "$1" in
  87. start)
  88. rh_status_q && exit 0
  89. $1
  90. ;;
  91. stop)
  92. rh_status_q || exit 0
  93. $1
  94. ;;
  95. restart|configtest)
  96. $1
  97. ;;
  98. status)
  99. rh_status
  100. ;;
  101. condrestart|try-restart)
  102. rh_status_q || exit 0
  103. restart
  104. ;;
  105. *)
  106. echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|configtest}"
  107. exit 2
  108. esac