#!/bin/bash # # /etc/rc.d/init.d/gpsd # # Starts the gps daemon # # chkconfig: 345 44 56 # description: Listen and dispatch GPS events # processname: gpsd # Source function library. . /etc/rc.d/init.d/functions DAEMON=gps PROGNAME=${DAEMON}d TTY=/dev/ttyUSB0 PIDFILE=/var/run/gpsd.pid CONTROL_SOCKET=/var/run/gpsd.sock OPTIONS="-n -F $CONTROL_SOCKET -P $PIDFILE" test -x /usr/sbin/$PROGNAME || exit 0 RETVAL=0 # # See how we were called. # start() { # Check if it is already running if [ ! -f /var/lock/subsys/$PROGNAME ]; then echo -n "Starting $DAEMON daemon: " daemon /usr/sbin/$PROGNAME $OPTIONS $TTY RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$PROGNAME echo fi return $RETVAL } stop() { echo -n "Stopping $DAEMON daemon: " killproc /usr/sbin/$PROGNAME RETVAL=$? [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROGNAME echo return $RETVAL } restart() { stop start } reload() { trap "" SIGHUP killall -HUP $PROGNAME } case "$1" in start) start ;; stop) stop ;; reload) reload ;; restart) restart ;; condrestart) if [ -f /var/lock/subsys/$PROGNAME ]; then restart fi ;; status) status $PROGNAME ;; *) INITNAME=`basename $0` echo "Usage: $INITNAME {start|stop|restart|condrestart|status}" exit 1 esac exit $RETVAL