summaryrefslogtreecommitdiff
path: root/rotord.sh
diff options
context:
space:
mode:
authorTim Redfern <tim@herge.(none)>2013-03-07 14:26:49 +0000
committerTim Redfern <tim@herge.(none)>2013-03-07 14:26:49 +0000
commit2080fe7e184b58e41c61b64474bf840d21a22072 (patch)
tree7dc38a361400fb413177e1831d828b17ea3838ba /rotord.sh
parenta2d174346667f2e81a7612aecb78da746081d490 (diff)
creating init script
Diffstat (limited to 'rotord.sh')
-rwxr-xr-xrotord.sh71
1 files changed, 71 insertions, 0 deletions
diff --git a/rotord.sh b/rotord.sh
new file mode 100755
index 0000000..c5429dd
--- /dev/null
+++ b/rotord.sh
@@ -0,0 +1,71 @@
+#!/bin/sh
+### BEGIN INIT INFO
+# Provides: rotord
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Start daemon at boot time
+# Description: Enable service provided by daemon.
+### END INIT INFO
+
+dir="/home/ubuntu/rotor/working"
+user="ubuntu"
+cmd="rotord"
+
+name=`basename $0`
+pid_file="/var/run/$name.pid"
+stdout_log="/var/log/$name.log"
+stderr_log="/var/log/$name.err"
+
+get_pid() {
+ cat "$pid_file"
+}
+
+is_running() {
+ [ -f "$pid_file" ] && ps `get_pid` > /dev/null 2>&1
+}
+
+case "$1" in
+ start)
+ if is_running; then
+ echo "Already started"
+ else
+ echo "Starting $name"
+ cd "$dir"
+ sudo -u "$user" $cmd > "$stdout_log" 2> "$stderr_log" \
+ & echo $! > "$pid_file"
+ if ! is_running; then
+ echo "Unable to start, see $stdout_log and $stderr_log"
+ exit 1
+ fi
+ fi
+ ;;
+ stop)
+ if is_running; then
+ echo "Stopping $name"
+ kill `get_pid`
+ rm "$pid_file"
+ else
+ echo "Not running"
+ fi
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ status)
+ if is_running; then
+ echo "Running"
+ else
+ echo "Stopped"
+ exit 1
+ fi
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|status}"
+ exit 1
+ ;;
+esac
+
+exit 0 \ No newline at end of file