#!/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)
status abrt-dump-oops
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|reload|force-reload}"
RETVAL=2
esac
exit $RETVAL