rc.bs 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. #!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
  2. ##
  3. ## rc.bs -- Run-Commands
  4. ##
  5. %config
  6. bs_enable="$openpkg_rc_def"
  7. bs_apachectl="@l_prefix@/libexec/bs/tools/bsapachectl"
  8. %start -u @l_rusr@
  9. rcService bs enable yes || exit 0
  10. if [ -f @l_bsdir@/bin/bsmon -a -f @l_bsdir@/etc/bsmon.cfg ]; then
  11. @l_prefix@/bin/perl @l_bsdir@/bin/bsmon -f @l_bsdir@/etc/bsmon.cfg
  12. fi
  13. if [ -f @l_bsdir@/bin/bbd -a -f @l_bsdir@/adm/bb-display.cfg ]; then
  14. @l_prefix@/bin/perl @l_bsdir@/bin/bbd -b @l_bsdir@
  15. fi
  16. for f in @l_bsdir@/adm/uxmon-net*; do
  17. set `basename $f`
  18. case $1 in
  19. *bak | *% )
  20. continue
  21. ;;
  22. *)
  23. @l_prefix@/bin/perl @l_bsdir@/uxmon/uxmon -r @l_bsdir@/uxmon/uxmon-rules.pl -b @l_bsdir@ -c $1
  24. ;;
  25. esac
  26. done
  27. ((ps ax 2>/dev/null) || \
  28. (ps -e -o pid,comm,args 2>/dev/null) || \
  29. (ps -e 2>/dev/null)) \
  30. | grep "bsmon"|grep -v "PID"|grep "perl"|awk '{printf("%d ",$1)}' \
  31. >@l_prefix@/var/bs/bs.pid
  32. ${bs_apachectl} start
  33. %stop -u @l_rusr@
  34. rcService bs enable yes || exit 0
  35. if [ -f @l_prefix@/var/bs/bs.pid ]; then
  36. kill -TERM `cat @l_prefix@/var/bs/bs.pid`
  37. rm -f @l_prefix@/var/bs/bs.pid 2>/dev/null || true
  38. fi
  39. if [ -f @l_prefix@/var/bs/bbd.pid ]; then
  40. kill -TERM `cat @l_prefix@/var/bs/bbd.pid`
  41. rm -f @l_prefix@/var/bs/bbd.pid 2>/dev/null || true
  42. fi
  43. if [ -f @l_prefix@/var/bs/uxmon.pid ]; then
  44. kill -TERM `cat @l_prefix@/var/bs/uxmon.pid`
  45. rm -f @l_prefix@/var/bs/uxmon.pid 2>/dev/null || true
  46. fi
  47. if [ -f @l_prefix@/var/bs/run/apache.pid ]; then
  48. ${bs_apachectl} stop
  49. rm -f @l_prefix@/var/bs/run/apache.pid 2>/dev/null || true
  50. fi
  51. %restart -u @l_rusr@
  52. rcService bs enable yes || exit 0
  53. if [ -f @l_prefix@/var/bs/bs.pid ]; then
  54. kill -TERM `cat @l_prefix@/var/bs/bs.pid`
  55. rm -f @l_prefix@/var/bs/bs.pid 2>/dev/null || true
  56. sleep 2
  57. fi
  58. if [ -f @l_prefix@/var/bs/bbd.pid ]; then
  59. kill -TERM `cat @l_prefix@/var/bs/bbd.pid`
  60. rm -f @l_prefix@/var/bs/bbd.pid 2>/dev/null || true
  61. sleep 2
  62. fi
  63. if [ -f @l_prefix@/var/bs/uxmon.pid ]; then
  64. kill -TERM `cat @l_prefix@/var/bs/uxmon.pid`
  65. rm -f @l_prefix@/var/bs/uxmon.pid 2>/dev/null || true
  66. sleep 2
  67. fi
  68. if [ -f @l_bsdir@/bin/bsmon -a -f @l_bsdir@/etc/bsmon.cfg ]; then
  69. @l_prefix@/bin/perl @l_bsdir@/bin/bsmon -f @l_bsdir@/etc/bsmon.cfg
  70. fi
  71. ${bs_apachectl} stop
  72. if [ -f @l_bsdir@/bin/bbd -a -f @l_bsdir@/adm/bb-display.cfg ]; then
  73. @l_prefix@/bin/perl @l_bsdir@/bin/bbd -b @l_bsdir@
  74. fi
  75. for f in @l_bsdir@/adm/uxmon-net*; do
  76. set `basename $f`
  77. case $1 in
  78. *bak | *%)
  79. continue
  80. ;;
  81. *)
  82. @l_prefix@/bin/perl @l_bsdir@/uxmon/uxmon -r @l_bsdir@/uxmon/uxmon-rules.pl -b @l_bsdir@ -c $1
  83. ;;
  84. esac
  85. done
  86. ps ax 2>/dev/null| grep -w "bs" 2>/dev/null|grep -v "PID"| grep "perl" | awk '{printf("%d ",$1)}' \
  87. >@l_prefix@/var/bs/bs.pid
  88. ${bs_apachectl} start
  89. %reload -u @l_rusr@
  90. rcService bs enable yes || exit 0
  91. if [ -f @l_prefix@/var/bs/bs.pid ]; then
  92. kill -HUP `cat @l_prefix@/var/bs/bs.pid`
  93. fi
  94. if [ -f @l_prefix@/var/bs/bbd.pid ]; then
  95. kill -HUP `cat @l_prefix@/var/bs/bbd.pid`
  96. fi
  97. if [ -f @l_prefix@/var/bs/uxmon.pid ]; then
  98. kill -HUP `cat @l_prefix@/var/bs/uxmon.pid`
  99. fi
  100. if [ -f@l_prefix@/var/bs/apache.pid ]; then
  101. kill -HUP `cat @l_prefix@/var/bs/run/apache.pid`
  102. fi