forked from LibreSchool/doraemon
80 lines
1.8 KiB
Bash
80 lines
1.8 KiB
Bash
#!/bin/sh
|
|
|
|
# chkconfig: 2345 20 80
|
|
# description: Manage assignation of hostnames for clients
|
|
# pidfile: /var/run/doraemon.pid
|
|
# config: /etc/doraemon.ini
|
|
|
|
### BEGIN INIT INFO
|
|
# Provides: doraemon
|
|
# Required-Start: $remote_fs $syslog
|
|
# Required-Stop: $remote_fs $syslog
|
|
# Default-Start: 2 3 4 5
|
|
# Default-Stop: 0 1 6
|
|
# Short-Description: Helps client to join the domain and maintain itself
|
|
# Description: Helps client to join the domain and maintain itself
|
|
### END INIT INFO
|
|
|
|
# Change the next 3 lines to suit where you install your script and what you want to call it
|
|
DAEMON=/usr/bin/doraemon.py
|
|
DAEMON_NAME=doraemon
|
|
|
|
# Add any command line options for your daemon here
|
|
DAEMON_OPTS=""
|
|
|
|
# This next line determines what user the script runs as.
|
|
# Root generally not recommended but necessary if you are using the Raspberry Pi GPIO from Python.
|
|
#DAEMON_USER=mac2hostname
|
|
#DAEMON_GROUP=mac2hostname
|
|
|
|
# The process ID of the script when it runs is stored here:
|
|
LOGFILE=/var/log/$DAEMON_NAME.log
|
|
PIDFILE=/var/run/$DAEMON_NAME.pid
|
|
lockfile=/var/lock/subsys/$DAEMON_NAME
|
|
|
|
. /etc/rc.d/init.d/functions
|
|
. /etc/sysconfig/network
|
|
|
|
[ "$NETWORKING" = "no" ] && exit 0
|
|
|
|
do_start () {
|
|
echo -n $"Starting $DAEMON_NAME: "
|
|
daemon --pidfile=$PIDFILE "python $DAEMON >>$LOGFILE 2>/dev/null &"
|
|
RETVAL=$?
|
|
echo
|
|
[ $RETVAL -eq 0 ] && touch $lockfile
|
|
return $RETVAL
|
|
}
|
|
|
|
do_stop () {
|
|
echo -n $"Stopping $DAEMON_NAME: "
|
|
killproc -p $PIDFILE python
|
|
RETVAL=$?
|
|
echo
|
|
[ $RETVAL -eq 0 ] && rm -f $lockfile
|
|
return $RETVAL
|
|
}
|
|
|
|
case "$1" in
|
|
|
|
start|stop)
|
|
do_${1}
|
|
;;
|
|
|
|
restart|reload|force-reload)
|
|
do_stop
|
|
do_start
|
|
;;
|
|
|
|
status)
|
|
status -p $PIDFILE python
|
|
;;
|
|
|
|
*)
|
|
echo "Usage: /etc/init.d/$DAEMON_NAME {start|stop|restart|status}"
|
|
exit 1
|
|
;;
|
|
|
|
esac
|
|
exit 0
|