Guest User

Untitled

a guest
Feb 20th, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.86 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. START_SCRIPT={{ start_script }}
  4. PID_FILE={{ pid_file }}
  5.  
  6. # ***********************************************
  7. # ***********************************************
  8.  
  9. ARGS="" # optional start script arguments
  10. DAEMON=$START_SCRIPT
  11.  
  12. # colors
  13. red='\e[0;31m'
  14. green='\e[0;32m'
  15. yellow='\e[0;33m'
  16. reset='\e[0m'
  17.  
  18. echoRed() { echo -e "${red}$1${reset}"; }
  19. echoGreen() { echo -e "${green}$1${reset}"; }
  20. echoYellow() { echo -e "${yellow}$1${reset}"; }
  21.  
  22. start() {
  23. PID=`$DAEMON $ARGS > /dev/null 2>&1 & echo $!`
  24. }
  25.  
  26. case "$1" in
  27. start)
  28. if [ -f $PID_FILE ]; then
  29. PID=`cat $PID_FILE`
  30. if [ -z "`ps axf | grep -w ${PID} | grep -v grep`" ]; then
  31. start
  32. else
  33. echoYellow "Already running [$PID]"
  34. exit 0
  35. fi
  36. else
  37. start
  38. fi
  39.  
  40. if [ -z $PID ]; then
  41. echoRed "Failed starting"
  42. exit 3
  43. else
  44. echo $PID > $PID_FILE
  45. echoGreen "Started [$PID]"
  46. exit 0
  47. fi
  48. ;;
  49.  
  50. status)
  51. if [ -f $PID_FILE ]; then
  52. PID=`cat $PID_FILE`
  53. if [ -z "`ps axf | grep -w ${PID} | grep -v grep`" ]; then
  54. echoRed "Not running (process dead but pidfile exists)"
  55. exit 1
  56. else
  57. echoGreen "Running [$PID]"
  58. exit 0
  59. fi
  60. else
  61. echoRed "Not running"
  62. exit 3
  63. fi
  64. ;;
  65.  
  66. stop)
  67. if [ -f $PID_FILE ]; then
  68. PID=`cat $PID_FILE`
  69. if [ -z "`ps axf | grep -w ${PID} | grep -v grep`" ]; then
  70. echoRed "Not running (process dead but pidfile exists)"
  71. exit 1
  72. else
  73. PID=`cat $PID_FILE`
  74. kill -HUP $PID
  75. echoGreen "Stopped [$PID]"
  76. rm -f $PID_FILE
  77. exit 0
  78. fi
  79. else
  80. echoRed "Not running (pid not found)"
  81. exit 3
  82. fi
  83. ;;
  84.  
  85. restart)
  86. $0 stop
  87. $0 start
  88. ;;
  89.  
  90. *)
  91. echo "Usage: $0 {status|start|stop|restart}"
  92. exit 1
  93. esac
Add Comment
Please, Sign In to add comment