Subversion Repositories configs

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
4 - 1
#!/bin/sh
2
#
3
# Startup script for mcelog
4
#
5
# This should be customized for distribution standards
6
# (using rc_status etc.)
7
# The paths are hardcoded and are not automatically adjusted
8
# for different prefix
9
#
10
### BEGIN INIT INFO
11
# Provides:		mcelog
12
# Default-Start:	3 5
13
# Default-Stop:		0 1 2 6
14
# Short-Description:	mcelog hardware error logging
15
# Description:          Start the mcelog hardware error logging.
16
#                       This logs and handles CPU hardware errors on x86 systems.
17
### END INIT INFO
18
# pull in sysconfig settings
19
[ -f /etc/sysconfig/mcelogd ] && . /etc/sysconfig/mcelogd
20
 
21
# Source function library.
22
. /etc/init.d/functions
23
 
24
# private settings
25
MCELOG=${MCELOG:-/usr/sbin/mcelog}
26
TRIGGER=/sys/devices/system/machinecheck/machinecheck0/trigger
27
LOCKFILE="/var/lock/subsys/mcelogd"
28
[ ! -x $MCELOG ] && ( echo "mcelog not found" ; exit 1 )
29
[ ! -r /dev/mcelog ] && ( echo "/dev/mcelog not active" ; exit 0 )
30
 
31
case "$MCELOG_MODE" in
32
daemon)
33
	;;
34
trigger)
35
	;;
36
cron)
37
	echo "mcelog not started"
38
	exit 0
39
	;;
40
*)
41
	echo "Unknown mcelog mode $MCELOG_MODE. Valid daemon/trigger/cron"
42
	exit 1
43
esac
44
 
45
case "$1" in
46
start)
47
	if [ -f $LOCKFILE ]; then
48
		exit 0
49
	fi
50
 
51
	if [ "$MCELOG_MODE" = "daemon" ] ; then
52
		echo "Starting mcelog daemon"
53
		daemon $MCELOG --daemon $MCELOG_OPTIONS
54
		touch $LOCKFILE
55
	elif [ -f "$TRIGGER" ] ; then
56
		echo $MCELOG > "$TRIGGER"
57
		touch $LOCKFILE
58
	else
59
		echo No machine check capability
60
	fi
61
	;;
62
stop)
63
	if [ "$MCELOG_MODE" = "daemon" ] ; then
64
		echo "Stopping mcelog"
65
		killproc $MCELOG -TERM
66
		rm -f $LOCKFILE
67
	elif [ "$MCELOG_MODE" = "trigger" -a -f "$TRIGGER" ]; then
68
		echo "" > "$TRIGGER"
69
		rm -f $LOCKFILE
70
	else
71
		echo mcelog not running
72
	fi
73
	;;
74
try-restart)
75
	$0 status > /dev/null && $0 restart
76
	;;
77
restart)
78
	$0 stop
79
	$0 start
80
	;;
81
reload)
82
	$0 try-restart
83
	;;
84
force-reload)
85
	$0 try-restart
86
	;;
87
status)
88
	if [ "$MCELOG_MODE" = "daemon" ] ; then
89
		echo "Checking for mcelog"
90
		status $MCELOG
91
	fi
92
	;;
93
*)
94
	echo "Usage: $0 {start|stop|try-restart|restart|status|force-reload|reload}"
95
	exit 1
96
esac
97
 
98