summaryrefslogtreecommitdiffstats
path: root/abrt-oops.init
diff options
context:
space:
mode:
Diffstat (limited to 'abrt-oops.init')
-rw-r--r--abrt-oops.init97
1 files changed, 97 insertions, 0 deletions
diff --git a/abrt-oops.init b/abrt-oops.init
new file mode 100644
index 00000000..cb64daca
--- /dev/null
+++ b/abrt-oops.init
@@ -0,0 +1,97 @@
+#!/bin/bash
+# Start ABRT kernel log watcher
+#
+# chkconfig: 35 82 16
+# description: Watches system log for oops messages, creates ABRT dump directories for each oops
+### BEGIN INIT INFO
+# Provides: abrt-oops
+# Required-Start: $abrtd
+# Default-Stop: 0 1 2 6
+# Default-Start: 3 5
+# Short-Description: Watches system log for oops messages, creates ABRT dump directories for each oops
+# Description: Watches system log for oops messages, creates ABRT dump directories for each oops
+### END INIT INFO
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+# For debugging
+dry_run=false
+verbose=false
+
+# We don't have pid files, therefore have to use
+# a flag file in /var/lock/subsys to enable GUI service tools
+# to figure out our status
+LOCK="/var/lock/subsys/abrt-oops"
+
+RETVAL=0
+
+check() {
+ # Check that we're a privileged user
+ [ "`id -u`" = 0 ] || exit 4
+}
+
+start() {
+ check
+ killall abrt-dump-oops 2>/dev/null
+ setsid abrt-dump-oops -d /var/spool/abrt -rwx /var/log/messages </dev/null >/dev/null 2>&1 &
+ $dry_run || touch -- "$LOCK"
+ return $RETVAL
+}
+
+stop() {
+ check
+ killall abrt-dump-oops
+ $dry_run || rm -f -- "$LOCK"
+ return $RETVAL
+}
+
+restart() {
+ stop
+ start
+}
+
+reload() {
+ restart
+}
+
+case "$1" in
+start)
+ start
+ ;;
+stop)
+ stop
+ ;;
+reload)
+ reload
+ ;;
+force-reload)
+ echo "$0: Unimplemented feature."
+ RETVAL=3
+ ;;
+restart)
+ restart
+ ;;
+condrestart)
+ # Is it already running?
+ if test -f "$LOCK"; then # yes
+ $verbose && printf "Running, restarting\n"
+ restart
+ fi
+ ;;
+status)
+ # Is it already running?
+ if test -f "$LOCK"; then # yes
+ $verbose && printf "Running\n"
+ RETVAL=0
+ else
+ $verbose && printf "Not running\n"
+ RETVAL=3 # "stopped normally"
+ fi
+ ;;
+*)
+ echo $"Usage: $0 {start|stop|status|restart|condrestart|reload|force-reload}"
+ RETVAL=2
+esac
+
+exit $RETVAL