mirror of
https://github.com/bitlair/bitlair_doorduino.git
synced 2025-05-13 12:20:07 +02:00
Initial pi-configs from running system
This commit is contained in:
parent
595dd8a30e
commit
5727a9aa71
5 changed files with 300 additions and 2 deletions
111
pi-config/doorduino-init
Normal file
111
pi-config/doorduino-init
Normal file
|
@ -0,0 +1,111 @@
|
|||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: generic-prog
|
||||
# Required-Start: $local_fs $remote_fs $network
|
||||
# Required-Stop: $local_fs $remote_fs $network
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Generic Program
|
||||
# Description: Generic Program is a generic program to do generic things with
|
||||
### END INIT INFO
|
||||
|
||||
|
||||
# Documentation available at
|
||||
# http://refspecs.linuxfoundation.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/iniscrptfunc.html
|
||||
# Debian provides some extra functions though
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
|
||||
DAEMON_NAME="root"
|
||||
DAEMON_USER="root"
|
||||
DAEMON_PATH="/root/bitlair_doorduino/pi-config/doorduino.py"
|
||||
DAEMON_OPTS="-c /root/bitlair_doorduino/pi-config/config"
|
||||
DAEMON_PWD="${PWD}"
|
||||
DAEMON_DESC=$(get_lsb_header_val $0 "Short-Description")
|
||||
DAEMON_PID="/var/run/${DAEMON_NAME}.pid"
|
||||
DAEMON_NICE=0
|
||||
DAEMON_LOG='/var/log/doorduino'
|
||||
|
||||
[ -r "/etc/default/${DAEMON_NAME}" ] && . "/etc/default/${DAEMON_NAME}"
|
||||
|
||||
do_start() {
|
||||
local result
|
||||
|
||||
pidofproc -p "${DAEMON_PID}" "${DAEMON_PATH}" > /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
log_warning_msg "${DAEMON_NAME} is already started"
|
||||
result=0
|
||||
else
|
||||
log_daemon_msg "Starting ${DAEMON_DESC}" "${DAEMON_NAME}"
|
||||
touch "${DAEMON_LOG}"
|
||||
chown $DAEMON_USER "${DAEMON_LOG}"
|
||||
chmod u+rw "${DAEMON_LOG}"
|
||||
if [ -z "${DAEMON_USER}" ]; then
|
||||
start-stop-daemon --start --quiet --oknodo --background \
|
||||
--nicelevel $DAEMON_NICE \
|
||||
--chdir "${DAEMON_PWD}" \
|
||||
--pidfile "${DAEMON_PID}" --make-pidfile \
|
||||
--exec "${DAEMON_PATH}" -- $DAEMON_OPTS
|
||||
result=$?
|
||||
else
|
||||
start-stop-daemon --start --quiet --oknodo --background \
|
||||
--nicelevel $DAEMON_NICE \
|
||||
--chdir "${DAEMON_PWD}" \
|
||||
--pidfile "${DAEMON_PID}" --make-pidfile \
|
||||
--chuid "${DAEMON_USER}" \
|
||||
--exec "${DAEMON_PATH}" -- $DAEMON_OPTS
|
||||
result=$?
|
||||
fi
|
||||
log_end_msg $result
|
||||
fi
|
||||
return $result
|
||||
}
|
||||
|
||||
do_stop() {
|
||||
local result
|
||||
|
||||
pidofproc -p "${DAEMON_PID}" "${DAEMON_PATH}" > /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
log_warning_msg "${DAEMON_NAME} is not started"
|
||||
result=0
|
||||
else
|
||||
log_daemon_msg "Stopping ${DAEMON_DESC}" "${DAEMON_NAME}"
|
||||
killproc -p "${DAEMON_PID}" "${DAEMON_PATH}"
|
||||
result=$?
|
||||
log_end_msg $result
|
||||
rm "${DAEMON_PID}"
|
||||
fi
|
||||
return $result
|
||||
}
|
||||
|
||||
do_restart() {
|
||||
local result
|
||||
do_stop
|
||||
result=$?
|
||||
if [ $result = 0 ]; then
|
||||
do_start
|
||||
result=$?
|
||||
fi
|
||||
return $result
|
||||
}
|
||||
|
||||
do_status() {
|
||||
local result
|
||||
status_of_proc -p "${DAEMON_PID}" "${DAEMON_PATH}" "${DAEMON_NAME}"
|
||||
result=$?
|
||||
return $result
|
||||
}
|
||||
|
||||
do_usage() {
|
||||
echo $"Usage: $0 {start | stop | restart | status}"
|
||||
exit 1
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start) do_start; exit $? ;;
|
||||
stop) do_stop; exit $? ;;
|
||||
restart) do_restart; exit $? ;;
|
||||
status) do_status; exit $? ;;
|
||||
*) do_usage; exit 1 ;;
|
||||
esac
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue