rc.postgresql 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
  2. ##
  3. ## rc.postgresql -- Run-Commands
  4. ##
  5. %config
  6. postgresql_enable="$openpkg_rc_def"
  7. postgresql_flags=""
  8. postgresql_datadir="@l_prefix@/var/postgresql/db"
  9. postgresql_shut_mode="smart"
  10. postgresql_socket_inet="127.0.0.1"
  11. postgresql_socket_unix="@l_prefix@/var/postgresql/run/"
  12. postgresql_log_prolog="true"
  13. postgresql_log_epilog="true"
  14. postgresql_log_numfiles="10"
  15. postgresql_log_minsize="1M"
  16. postgresql_log_complevel="9"
  17. %common
  18. postgresql_opts="-i -h $postgresql_socket_inet -k $postgresql_socket_unix"
  19. postgresql_opts="$postgresql_opts $postgresql_flags"
  20. postgresql_log_file="@l_prefix@/var/postgresql/run/postgresql.log"
  21. %status -u @l_rusr@ -o
  22. postgresql_usable="unknown"
  23. postgresql_active="no"
  24. rcService postgresql enable yes && \
  25. @l_prefix@/bin/pg_ctl status -D $postgresql_datadir >/dev/null && postgresql_active="yes"
  26. echo "postgresql_enable=\"$postgresql_enable\""
  27. echo "postgresql_usable=\"$postgresql_usable\""
  28. echo "postgresql_active=\"$postgresql_active\""
  29. %start -p 400 -u @l_rusr@
  30. rcService postgresql enable yes || exit 0
  31. rcService postgresql active yes && exit 0
  32. @l_prefix@/bin/pg_ctl start -l $postgresql_log_file -D $postgresql_datadir -o "$postgresql_opts"
  33. %stop -p 400 -u @l_rusr@
  34. rcService postgresql enable yes || exit 0
  35. rcService postgresql active no && exit 0
  36. @l_prefix@/bin/pg_ctl stop -l $postgresql_log_file -D $postgresql_datadir -m $postgresql_shut_mode
  37. %restart -p 400 -u @l_rusr@
  38. rcService postgresql enable yes || exit 0
  39. rcService postgresql active no && exit 0
  40. @l_prefix@/bin/pg_ctl restart -l $postgresql_log_file -D $postgresql_datadir -o "$postgresql_opts" -m $postgresql_shut_mode
  41. %reload -p 400 -u @l_rusr@
  42. rcService postgresql enable yes || exit 0
  43. rcService postgresql active no && exit 0
  44. @l_prefix@/bin/pg_ctl reload -D $postgresql_datadir
  45. %daily -u @l_rusr@
  46. rcService postgresql enable yes || exit 0
  47. # rotate logfile
  48. shtool rotate -f \
  49. -n ${postgresql_log_numfiles} -s ${postgresql_log_minsize} -d \
  50. -z ${postgresql_log_complevel} -m 600 -o @l_rusr@ -g @l_rgrp@ \
  51. -P "$postgresql_log_prolog" \
  52. -E "$postgresql_log_epilog && rc postgresql reload" \
  53. $postgresql_log_file