1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
#! /bin/sh
### BEGIN INIT INFO
# Provides: kdump-tools
# Required-Start: $syslog $time $local_fs $remote_fs $network
# Required-Stop: $syslog
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: kdump
# Description: init script to load a kdump kernel or save vmcores
### END INIT INFO
PATH=/bin:/usr/bin:/sbin:/usr/sbin
NAME="kdump-tools"
DESC="kdump-tools"
export NAME
. /lib/lsb/init-functions
. /lib/init/vars.sh
VMCORE_FILE=/proc/vmcore
KDUMP_SCRIPT=/usr/sbin/kdump-config
KDUMP_DEFAULTS=/etc/default/kdump-tools
[ -r $KDUMP_DEFAULTS ] && . $KDUMP_DEFAULTS
[ $USE_KDUMP -ne 0 ] || exit 0;
case "$1" in
start)
if init_is_upstart; then
exit 1
fi
#
# If we have a /proc/vmcore, then we just kdump'ed
#
if [ -e $VMCORE_FILE -a -s $VMCORE_FILE ]; then
echo -n "Starting $DESC: "
$KDUMP_SCRIPT savecore
if [ $? -ne 0 -a -n "$KDUMP_FAIL_CMD" ] ; then
$KDUMP_FAIL_CMD ;
else
date -R ;
reboot -f ;
fi
#
# Else, we've just booted and need to load the kdump kernel
#
else
echo -n "Starting $DESC: "
$KDUMP_SCRIPT load
fi
;;
stop)
if init_is_upstart; then
exit 1
fi
echo -n "Stopping $DESC: "
$KDUMP_SCRIPT unload
;;
status)
$KDUMP_SCRIPT status
;;
restart|force-reload)
if init_is_upstart; then
exit 1
fi
# alias the required 'force-reload' option
$KDUMP_SCRIPT unload
$KDUMP_SCRIPT load
;;
*)
echo "Usage: $0 {start|stop|status|restart|force-reload}"
exit 1
esac
exit 0
|