S42mender 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #!/bin/sh
  2. #
  3. # Starts mender service.
  4. #
  5. DAEMON="mender"
  6. DAEMON_PATH="/usr/bin/mender"
  7. PIDFILE="/var/run/${DAEMON}.pid"
  8. DAEMON_ARGS="daemon"
  9. start() {
  10. # If /var/lib/mender is a symlink to /var/run/mender, and
  11. # - the filesystem is RO (i.e. we can not rm the symlink),
  12. # create the directory pointed to by the symlink.
  13. # - the filesystem is RW (i.e. we can rm the symlink),
  14. # replace the symlink with an actual directory
  15. if [ -L /var/lib/mender ] && [ "$(readlink /var/lib/mender)" = "/var/run/mender" ]
  16. then
  17. if rm -f /var/lib/mender >/dev/null 2>&1; then
  18. mkdir -p /var/lib/mender
  19. else
  20. echo "No persistent location to store mender data. Data will be lost"
  21. echo "at reboot. Are you sure this is what you want to do?"
  22. mkdir -p "$(readlink /var/lib/mender)"
  23. fi
  24. fi
  25. printf "Starting mender service: "
  26. umask 077
  27. start-stop-daemon -bmSqp "$PIDFILE" -x ${DAEMON_PATH} -- ${DAEMON_ARGS}
  28. status=$?
  29. [ "${status}" = 0 ] && echo "OK" || echo "FAIL"
  30. }
  31. stop() {
  32. printf "Stopping mender service: "
  33. start-stop-daemon -Kqp "$PIDFILE"
  34. status=$?
  35. [ "${status}" = 0 ] && echo "OK" || echo "FAIL"
  36. }
  37. restart() {
  38. stop
  39. start
  40. }
  41. case "$1" in
  42. start)
  43. start
  44. ;;
  45. stop)
  46. stop
  47. ;;
  48. restart|reload)
  49. restart
  50. ;;
  51. *)
  52. echo "Usage: $0 {start|stop|reload|restart}"
  53. exit 1
  54. esac
  55. exit $?