#! /bin/sh # Based on the Debian initscript for mosquitto ### BEGIN INIT INFO # Provides: mosquitto # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: mosquitto MQTT message broker # Description: # This is a message broker that supports version 3.1/3.1.1 of the MQ Telemetry # Transport (MQTT) protocol. # # MQTT provides a method of carrying out messaging using a publish/subscribe # model. It is lightweight, both in terms of bandwidth usage and ease of # implementation. This makes it particularly useful at the edge of the network # where a sensor or other simple device may be implemented using an arduino for # example. ### END INIT INFO set -e PIDFILE=@LOCALSTATEDIR@/run/mosquitto.pid DAEMON=@SBINDIR@/mosquitto # start and stop the mosquitto MQTT message broker test -x ${DAEMON} || exit 0 umask 022 . @SYSCONFDIR@/init.d/functions export PATH="${PATH:+$PATH:}@SBINDIR@:@BASE_SBINDIR@" case "$1" in start) echo "Starting Mosquitto message broker" "mosquitto" if start-stop-daemon --start --quiet --oknodo --background --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON} ; then exit 0 else exit 1 fi ;; stop) echo "Stopping Mosquitto message broker" "mosquitto" if start-stop-daemon --stop --quiet --oknodo --pidfile ${PIDFILE}; then rm -f ${PIDFILE} exit 0 else exit 1 fi ;; reload|force-reload) if [ -f ${PIDFILE} ] ; then echo "Reloading configuration for mosquitto" pid=`cat ${PIDFILE}` kill -HUP $pid else echo "mosquitto does not seem to be running" fi ;; restart) echo "Restarting Mosquitto message broker" "mosquitto" if start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile ${PIDFILE}; then rm -f ${PIDFILE} fi if start-stop-daemon --start --quiet --oknodo --background --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON} -- -c @SYSCONFDIR@/mosquitto/mosquitto.conf ; then exit 0 else exit 1 fi ;; status) status ${DAEMON} && exit 0 || exit $? ;; *) echo "Usage: $0 {start|stop|reload|force-reload|restart|status}" exit 1 esac exit 0